• 第一章 热修复设计
  • 第一节、AOT/JIT & dexopt 与dex2oat
  • 一、AOT/JIT
  • 二、dexopt 与dex2oat
  • 第二节、热修复设计之CLASS_ISPREVERIFIED 问题
  • 一、前言
  • 二、建立测试Demo
  • 三、制作补丁
  • 四、加载补丁
  • 五、CLASS_ISPREVERIFIED
  • 第三节、热修复设计之热修复原理
  • 一、Android 热修复
  • 二、Android 虚拟机和编译加载顺序
  • 三、混合模式的理解
  • 四、源码类到机器执行的文件过程
  • 五、补丁包
  • 六、类补丁生效原理
  • 七、Davlik 虚拟机的限制
  • 八、Davlik Class resolved by unexpected DEX: 限制和处理方式
  • 九、类加载器的双亲委派加载机制
  • 第四节、Tinker 的集成与使用(自动补丁包生成)
  • 一、简述
  • 二、Tinker 组件依赖
  • 三、Tinker 的配置及任务
  • 四、Tinker 封装与拓展
  • 五、编写Application 的代理类
  • 六、常用API
  • 七、测试
  • 八、细节
  • 第二章 插件化设计
  • 第一节、Class 文件与Dex 文件的结构解读
  • 一、Class 文件
  • 二、Dex 文件
  • 三、Class 文件和Dex 文件对比
  • 第二节、Android 资源加载机制详解
  • 第三节、四大组件调用原理
  • 第四节、so 文件加载机制
  • 第五节、Android 系统服务实现原理
  • 第三章 组件化框架设计
  • 第一节、阿里巴巴开源路由框——ARouter 原理分析
  • 第二节、APT 编译时期自动生成代码&动态类加载
  • 第三节、Java SPI 机制
  • 第四节、AOP&IOC
  • 第五节、手写组件化架构
  • 第四章 图片加载框架
  • 第一节 图片加载框架选型
  • 第二节 Glide 原理分析
  • 第三节 手写图片加载框架实战
  • 第五章 网络访问框架设计
  • 第一节 网络通信必备基础
  • 第二节 OkHttp 源码解读
  • 第三节 Retrofit2 源码解析
  • 第六章 RXJava响应式编程框架设计
  • 第一节 RXJava之链式调用
  • 第二节 RXJava之扩展的观察者模式
  • 第三节 RXJava之事件变换设计
  • 第四节 Scheduler 线程控制
  • 第七章 IOC架构设计
  • 第一节 依赖注入与控制反转
  • 第二节 ButterKnife 原理上篇、中篇、下篇
  • 第三节 IOC架构设计之Dagger2架构设计
  • 第八章 Android架构组件 JetPack
  • 第一节 LiveData的工作原理
  • 第二节 Navigation 如何解决tabLayout 问题
  • 第三节 ViewModel 如何感知View 生命周期及内核原理
  • 第四节 Room 架构方式方法
  • 第五节 dataBinding 为什么能够支持MVVM
  • 第六节 WorkManager 内核揭秘
  • 第七节 Lifecycles 生命周期