Quibbler

Quibbler

站长

加入于 2019-10-06

不忘初心的阿甘

598

文章

41

评论

TA 的文章(580)

Android

multiDex:分包

multiDex:分包开发的APP功能越来越多,引入的库也越来越多,很容易达到“界限”65536,因为Android中一个Dex文件最多存储65536个方法(short类型的范围)。这时候就要开启“分包”multiDex。1、Android 5.0之后分包Android 5.0也就是API 21之后ART虚拟机支持MultiDex。直接在build.gradle文件中直接配置multiDexEna

1.8k
Code

异常捕捉:UncaughtExceptionHandler

异常捕捉:UncaughtExceptionHandler 1、UncaughtExceptionHandlerUncaughtExceptionHandler是定义在Thread类中的接口,用于处理导致线程终止的未捕获异常。2、自定义UncaughtExceptionHandler只需要实现Thread.UncaughtExceptionHandler接口,实现uncaughtException

2.1k
Android

Bitmap加载选项:BitmapFactory.Options

Bitmap加载选项:BitmapFactory.Options1、BitmapFactory.OptionsBitmapFactory.Options是BitmapFactory加载Bitmap用到的选项配置,用于解码Bitmap的时设置各种参数选项。BitmapFactory的使用参考BitmapFactory详解。2、重要属性BitmapFactory.Options类有很多public成员

1.8k
开源

DiskLruCache简介

DiskLruCache简介Android开发中经常用到三级缓存:内存缓存、硬盘缓存、网络缓存。速度也是由快到慢。内存缓存用到的是LruCache,这里来介绍一下硬盘缓存DiskLruCache。GitHub:DiskLruCacheAPIDoc:DiskLruCache1、添加依赖DiskLruCache不是Android官方的工具类,是由大神JakeWharton写的。该库已经归档,不再维护。

1.8k
Android

HandlerThread源码的实现

HandlerThread源码的实现HandlerThread继承自Thread,和普通线程一样,只不过HandlerThread有自己的Looper,线程启动之后可以用HandlerThread中的Looper创建Handler,向Handler发送消息,将任务放到线程中执行。比如熟悉的IntentService,内部就是借助HandlerThread在子线程中执行onHandleIntent(

1.7k
IntentService原理
Android

IntentService原理

IntentService原理之前记录了一篇IntentService 的使用(参考IntentService使用详解),没有详细对IntentService的实现原理进行深入颇析。正好阅读Android源码,对一些实现原理进行深入的了解。先介绍一下IntentService中两个重要的成员变量:mServiceLooper和mServiceHandler。在IntentService初始化的时候

1.7k
Android

源码颇析AsyncTask工作原理

源码颇析AsyncTask工作原理Android开发中经常会用到AsyncTask开启异步任务,后台执行耗时操作,具体用法参考《AsyncTask:异步任务》。现在从源码来看看AsyncTask的实现机制。1、AsyncTask中的线程池AsyncTask中封装了两种Executor,一个是顺序执行的SERIAL_EXECUTOR,另一个是并发执行的THREAD_POOL_EXECUTOR。1.1

1.8k
Android

Thread和ThreadLocal

Thread和ThreadLocal Handler获取当前线程的 Looper 对象,而每一个线程的 Looper 是不一样。每一个线程都有一个 Looper 对象,使用 ThradLocal 去保存和获取当前线程的 Looper 是最佳的选择。Android中Handler、Looper消息机制得益于巧妙的运用了ThreadLocal的特性,关于Handler机制参考Handler、Loope

1.9k
Handler、Looper、MessageQueue消息机制原理
Android

Handler、Looper、MessageQueue消息机制原理

Handler、Looper、MessageQueue消息机制原理Android消息机制是安卓开发中非常重要的,在子线程中处理完I/O、网络请求,使用Handler切回到主线程处理。1、LooperAndroid Looper设计的非常巧妙,使用ThreadLocal实现这个特性。关于ThreadLocal参考另外一篇Thread和ThreadLocal。1.1、主线程Looper一个Applic

1.9k
ContentProvider启动流程及原理
Android

ContentProvider启动流程及原理

ContentProvider启动流程及原理ContentProvider作为Android的四大组件之一是非常重要的,它的用法参考ContentProvider的用法。本篇主要顺着源码理解ContentProvider的启动和底层原理。1、ContentProvider启动当一个APP启动的时候从ActivityThread的main方法入口加载的过程中就会初始化本应用的ContentProvi

2.0k