为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
Android必学-AsyncTask基础_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

Android必学-AsyncTask基础

eclipse_xu 移动开发工程师
难度中级
时长49分
  • AsyncTask注意事项
    查看全部
    0 采集 收起 来源:总结

    2015-12-15

  • 在AsyncTask中只有donInBackground是运行在新线程中的,其他方法都运行在主线线程(UI线程)中。
    查看全部
    0 采集 收起 来源:总结

    2015-12-15

  • AsyncTask子类的回调方法
    查看全部
  • AsyncTask子类的参数
    查看全部
  • 异步任务
    查看全部
    0 采集 收起 来源:AsyncTask概述

    2015-12-15

  • 得到url,open一个connection,得到输入流,把输入流存入本地,再decode,关闭流
    查看全部
    0 采集 收起 来源:创建AsyncTask类

    2015-12-15

  • 网络获取图片,返回bitmap
    查看全部
    0 采集 收起 来源:创建AsyncTask类

    2015-12-15

  • asyncTeak三个参数解析
    查看全部
  • AsyncTask 注意点
    查看全部
    0 采集 收起 来源:总结

    2015-12-15

  • doInbackground onpteExcute onPostExcute
    查看全部
  • 构建AsyncTask子类的泛型参数 AsyncTask<Params,Progress,Result>是一个抽象类,通常用于被继承.继承AsyncTask需要指定如下三个泛型参数: Params:启动任务时输入的参数类型. Progress:后台任务执行中返回进度值的类型. Result:后台任务执行完成后返回结果的类型. .构建AsyncTask子类的回调方法 AsyncTask主要有如下几个方法: doInBackground:必须重写,异步执行后台线程要完成的任务,耗时操作将在此方法中完成. onPreExecute:执行后台耗时操作前被调用,通常用于进行初始化操作. onPostExecute:当doInBackground方法完成后,系统将自动调用此方法,并将doInBackground方法返回的值传入此方法.通过此方法进行UI的更新. onProgressUpdate:当在doInBackground方法中调用publishProgress方法更新任务执行进度后,将调用此方法.通过此方法我们可以知晓任务的完成进度.
    查看全部
    0 采集 收起 来源:总结

    2018-03-22

  • .使用AsyncTask的注意事项 ① 必须在UI线程中创建AsyncTask的实例. ② 只能在UI线程中调用AsyncTask的execute方法. ③ AsyncTask被重写的四个方法是系统自动调用的,不应手动调用. ④ 每个AsyncTask只能被执行(execute方法)一次,多次执行将会引发异常. ⑤ AsyncTask的四个方法,只有doInBackground方法是运行在其他线程中,其他三个方法都运行在UI线程中,也就说其他三个方法都可以进行UI的更新操作.
    查看全部
    0 采集 收起 来源:总结

    2015-12-09

  • 点击'加载进度条'按钮后程序看起来运行正常.但是,正如上面图示,如果接着点击BACK键,紧接着再次点击'加载进度条'按钮,会发现进度条的进度一直是零,过了一会才开始更新.这是为什么呢? 根据上述的讲解,我们知道,AsyncTask是基于线程池进行实现的,当一个线程没有结束时,后面的线程是不能执行的.所以必须等到第一个task的for循环结束后,才能执行第二个task.我们知道,当点击BACK键时会调用Activity的onPause()方法.为了解决这个问题,我们需要在Activity的onPause()方法中将正在执行的task标记为cancel状态,在doInBackground方法中进行异步处理时判断是否是cancel状态来决定是否取消之前的task.
    查看全部
  • .为什么需要使用异步任务? 我们知道,Android中只有UI线程,也就是主线程才能进行对UI的更新操作,而其他线程是不能直接操作UI的.这样的好处是保证了UI的稳定性和准确性,避免多个线程同时对UI进行操作而造成UI的混乱.但Android是一个多线程的操作系统,我们总不能把所有的任务都放在主线程中进行实现,比如网络操作,文件读取等耗时操作,如果全部放到主线程去执行,就可能会造成后面任务的阻塞.Android会去检测这种阻塞,当阻塞时间太长的时候,就会抛出Application Not Responsed(ANR)错误.所以我们需要将这些耗时操作放在非主线程中去执行.这样既避免了Android的单线程模型,又避免了ANR. .AsyncTask为何而生? 提到异步任务,我们能想到用线程,线程池去实现.确实,Android给我们提供了主线程与其他线程通讯的机制.但同时,Android也给我们提供了一个封装好的组件--AsyncTask.利用AsyncTask,我们可以很方便的实现异步任务处理.AsyncTask可以在子线程中更新UI,也封装简化了异步操作.使用线程,线程池处理异步任务涉及到了线程的同步,管理等问题.而且当线程结束的时候还需要使用Handler去通知主线程来更新UI.而AsyncTask封装了这一切,使得我们可以很方便的在子线程中更新UI.
    查看全部
    1 采集 收起 来源:AsyncTask概述

    2015-12-09

  • abc
    查看全部
    0 采集 收起 来源:总结

    2015-12-06

举报

0/150
提交
取消
课程须知
本课程是Android初级课程 1、掌握基本的Android应用程序开发方法 2、掌握AsyncTask中个方法中参数的意义 3、掌握AsyncTask中4个常用的方法
老师告诉你能学到什么?
1、了解Android的单线程模型 2、 AsyncTask的基本构成 3、 AsyncTask的回调方法 4、 AsyncTask实例
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!