使用了异步任务中cancel方法还是取消不了衅片的下载呀
我是在IndexFragment中的onDetory中调用cancel方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | @Override public void onDestroy() { super .onDestroy(); //这句代码 也不能清除消息机制继续传递,可以看到logccat中继续有图片下载完成的消息通知 if (downLoadHelper_0!= null ) { boolean cancel = downLoadHelper_0.cancel( true ); Log.d(TAG, "onDestroy: 总体数据下载取消" +cancel); } if (downLoadHelper_1!= null ) { boolean cancel = downLoadHelper_1.cancel( true ); Log.d(TAG, "onDestroy: 图片下载取消:" +cancel); } if (downLoadHelper_2!= null ) { boolean cancel = downLoadHelper_2.cancel( true ); Log.d(TAG, "onDestroy: 商品明细下载取消:" +cancel); } handler.removeCallbacksAndMessages( null ); } |
这是输出的log信息,说明取消成功后,图片仍然在下载
1 2 3 4 5 6 7 8 | D/IndexFragment: onDestroy: 总体数据下载取消 false onDestroy: 图片下载取消: true D/DownLoadHelper: onCancelled: D/IndexFragment: handleMessage: 图片下载完成 0 D/IndexFragment: handleMessage: 图片下载完成 1 D/IndexFragment: handleMessage: 图片下载完成 2 D/IndexFragment: handleMessage: 图片下载完成 3 D/IndexFragment: handleMessage: 图片下载完成 4 |
9
收起
正在回答 回答被采纳积分+1
3回答
2.Android 网络操作与流行框架
- 参与学习 人
- 提交作业 220 份
- 解答问题 1800 个
本阶段是联网及数据处理的必备技能。课程从网络基础知识到线程间协同工作、异步下载处理;从文件存储、到轻量级数据库SQLite的使用;最后利用最流程的第三方框架助你快速开发企业级APP。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧