1、Looper,原理,主线程阻塞,postDelay实现方式
2、ThreadLocal、IntentService、ThreadHandler
3、缓存池、ThreadPool类型,要素、核心线程定义方式
4、事件冲突、解决方式:2种 嵌套滚动
5、View绘制原理,measure/layout /draw measure模式32位取值代表含义
at_most/up_expected/
6、启动一个APP过程
7、JVM加载过程
8、StartActivity流程(AMS,跨进程)
9、AIDL、Binder
10、HTTP/HTTPS区分,原理 1和2的区别、错误码的含义
11、锁的分类(无锁、偏向锁、轻量锁、重量锁、自旋、乐观、悲观),死锁形成原因、Volatile(仅保证可见性) Reentrant Lock Synchrosize
12、线程状态(create/start/sleep/wait/stop),yeid和sleep notifyall
13、Stack Queue使用 Stack(push pop peek search) Queue(add / remove /peek )
14、RecyclerView 和ListView缓存策略对比 (mActiveViews/mScrapViews) (viewScrap/mCacheViews/RecyclerPool/mViewCacheExtend)
15、性能优化(WEBP/SVGA)、APP瘦身、内存泄漏检测
16、数据库大量数据处理,事务
17、Tinker热修复原理、与其他热修复区分、是否支持资源更新
18、Retrofit、OkHttp原理、缓存、编解码、线程池
19、RxJava常用操作符、线程切换实现
20、反射、动态代理
21、常用设计模式
22、实现单例的9种方式
23、全面屏适配、新版本特性、Density
24、优化一个界面的打开速度和流畅性:View层级、修改RecyclerView缓存大小
25、LruCache、HashMap、红黑树、B+树
26、常见排序算法:快速、冒泡、二分、选择排序,时间复杂度