Android热更新
一、热更新流程
1.线上检查到严重的crash
2.拉出bugfix分支并在分支上修复问题
3.jenkins构建和补丁生成
4.app通过推送或主动拉取补丁文件
5.将bugfix代码合到master上
二、主流热更新框架介绍
1.Dexposed
2.AndFix
3.Nuwa
三、热更新原理
1、Android类加载机制
PathClassLoader
DexClassLoader
2.热修复机制
1.dexElements
2.ClassLoader会遍历这个数组
总结:在ClassLoader中创建一个dexElement这样一个dex文件的数组,然后根据线上的crash定位找到对应的类文件,然后把这个类文件打包成一个dex文件后放到这个数组最前方,这样就会让ClassLoader遍历这个数组时不会加载那个有问题的线上crash的dex文件,而只会加载我们修复完的dex文件。