Android中如何实现异步任务

Android中如何实现异步任务,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

创新互联建站于2013年成立,是专业互联网技术服务公司,拥有项目网站设计制作、网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元原州做网站,已为上家服务,为原州各地企业和个人服务,联系电话:18982081108

为了解决新线程不能更新UI组件的问题,Android提供了几种解决方案

  1. 使用Hanlder

  2. Acitity.renOnuiThread(Runnable)

  3. View.post(Runnable)

  4. View.postDelayed(Runnable,long)

  5. ......

Hanlder的操作其实还算OK,主要是后面几种方法可能导致编程略显枯燥,这个时候使用AsyncTask可以简化这种操作

AsyncTask是一个抽象类,通常用于被继承,而被继承则需腰指定这三个泛型参数

  1. Parans:启动任务执行的输入参数的类型

  2. Progress:后台任务完成的进度值的类型

  3. Result:后台执行任务完成后返回结果的类型

使用异步操作其实只需要三步

  1. 创建AsyncTask的子类,并且为三个泛型参数指定类型

  2. 实现AsyncTask的方法

  3. 调用AsyncTask的子类的execute开始执行耗时任务

使用execute时必须遵守的规则

  • 必须在UI线程中创建AsyncTask的实例

  • 必须在UI线程中创建AsyncTask的实例的execute方法

  • AsyncTask的各个方法应该由Android系统调用而不是程序员

  • 每个AsyncTask只能被执行一次,多次会引发异常

而AsyncTask的方法有如下几种

  1. doInBackground(Params...)

  2. onProgressUpdate(Progress...values)

  3. onPreExecute()

  4. onPoxtExecute()

关于Android中如何实现异步任务问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。


分享名称:Android中如何实现异步任务
网站链接:http://ybzwz.com/article/gdiies.html