有关于热修复插件化

热修复

主流两类:

1.底层替换方案,例andfix:在native层将ArtMethod字段替换,sophix ArtMethod整体替换,直接memcopy,(其中的ArtMethod,size,使用数组中相邻元素的地址相减得出)。

2.类加载方案,替换DexClassLoader 中Element[] dexElements,直接替换dex

插件化:

1.ClassLoader加载dex,使用反射调用Activity生命周期

2.使用hook,骗过系统Activity的AndroidManifest.xml 验证,使用hook定制自己的LoodApk ,以及ClassLoader 加载插件,也可以使用DexClassLoader 中Element[] dexElements,add插件。

你可能感兴趣的:(有关于热修复插件化)