使用AsyncTask的常见问题及解决方式
来源:互联网 发布:earpods 知乎 编辑:程序博客网 时间:2024/05/17 23:03
使用AsyncTask的常见问题及解决方式
分类:
版权声明:本文为博主原创文章,未经博主允许不得转载。
Configuration Changes(旋转屏幕是其中一种)时,会销毁并重建Activity,使用AsyncTask常出现的问题有,AsyncTask还在运行,但是屏幕一旋转,Activity销毁并重建,这样的话很可能导致崩溃。
解决方式一. 使用worker fragment
老外有篇博文介绍了这个的实现,我把它称为worker fragment
将AsyncTask放置于Fragment中,将Fragment放到Activity中,使用Fragment.setRetainInstance(),这样做的话,旋转屏幕Fragment是不会重建的。
解决方式二. 使用eventBus之类的库
http://simonvt.net/2014/04/17/asynctask-is-bad-and-you-should-feel-bad/
这篇文章介绍了,这里就不多做解释。
解决方式三. 使用WeakReference来实现。
AsyncTask的子类设置为static,同时持有Activity的弱引用,大概代码如下
阅读全文
0 0
- 使用AsyncTask的常见问题及解决方式
- 使用AsyncTask的常见问题及解决方式
- 编码常见问题及解决方式
- docker常见问题及解决方式
- CheckStyle报错的常见问题及解决方式
- eclipse使用及常见问题解决
- 华为VPN常见问题及解决方式
- Android AsyncTask使用方式及原理
- AsyncTask的NoClassDefFound的解决方式
- 使用AndroidStudio经常遇到的三个常见问题 及解决
- AsyncTask的使用及原理
- AsyncTask的使用及注意事项
- CocoaPods安装、使用及常见问题解决
- CocoaPods安装、使用及常见问题解决
- 使用Word常见问题的解决
- WIN7下客户端常见问题的解决方式
- .net 开发常见问题解决方式的收藏
- ubuntu下一些常见问题的解决方式
- 矩阵面积
- Camera---创建一个等同屏幕碰撞器
- socket函数 getaddrinfo()
- Oracle 普通子查询和关联子查询
- 集群工具ansible简单使用
- 使用AsyncTask的常见问题及解决方式
- HDU-1754-I Hate It-(线段树)
- java.lang.SecurityException: Invalid signature file digest for Manifest main attributes
- 模拟linux tree命令打印文件树
- iOS学习笔记-103.多线程02——线程状态、同步、通信
- JVM类加载机制
- javascript里面的数据类型有哪些
- 基于jquery的树形列表TreeGrid
- PyQt初级教程