Android 异步加载解决方案
16lz
2021-01-23
Android的Lazy Load主要体现在网络数据(图片)异步加载、数据库查询、复杂业务逻辑处理以及费时任务操作导致的异步处理等方面。在介绍Android开发过程中,异步处理这个常见的技术问题之前,我们简单回顾下Android开发过程中需要注意的几个地方。
Android应用开发过程中必须遵循单线程模型(SingleThreadModel)的原则。因为Android的UI操作并不是线程安全的,所以涉及UI的操作必须在UI线程中完成。但是并非所有的操作都能在主线程中进行,Google工程师在设计上约定,Android应用在5s内无响应的话会导致ANR(Application Not Response),这就要求开发者必须遵循两条法则:1、不能阻塞UI线程,2、确保只在UI线程中访问Android UI工具包。于是,开启子线程进行异步处理的技术方案应运而生。
本文以自定义ListView,异步加载网络图片示例,总结了Android开发过程中,常用的三种异步加载的技术方案。
更多相关文章
- Android中线程的使用方法
- Android 使用RecyclerVeiw加载复杂布局
- Android UI主线程和子线程
- Android文档——进程优先级与线程
- Android之 UI主线程ZT
- Android第三方异步网路加载库AsyncHttpClient内部实现缓存策略
- Android中的多线程