Author: kaedea
GitHub: android-dynamical-loading
在Android开发中采用基于ClassLoader的动态加载技术,可以达到不安装新APK就升级APP的目的,也可以用来修复一些紧急BUG。
《Android动态加载技术 简单易懂的介绍方式》
1. 动态加载技术在Android中的使用背景; 2. Android的动态的加载大致可以分为“加载SO库”和“加载DEX/JAR/APK”两种; 3. 动态加载的基础是类加载器ClassLoader; 4. “加载DEX/JAR/APK”的三种模式; 5. 采用动态加载的作用与代价; 6. 除了ClassLoader之外的动态修改代码的技术(HotFix); 7. 一些动态加载的开源项目;
《Android动态加载基础 ClassLoader的工作机制》
1. 类加载器ClassLoader的创建过程和加载类的过程; 2. ClassLoader的双亲代理模式; 3. DexClassLoader和PathClassLoader之间的区别; 4. 使用ClassLoader加载外部类需要注意的一些问题; 5. 自定义ClassLoader(Hack开发)
《Android动态加载补充 加载SD卡的SO库》
1. 如何编译和使用SO库; 2. 如何加载SD卡中的SO库(也是动态加载APK需要解决的问题);
《Android动态加载入门 简单加载模式》
1. 如何创建我们需要的dex文件; 2. 如何加载dex文件里面的类; 3. 动态加载dex文件在ART虚拟机的兼容性问题;
《Android动态加载进阶 代理Activity模式》
1. 如何启动插件APK中没有注册的Activity 2. 代理Activity模式开源项目“dynamic-load-apk”
《Android动态加载黑科技 动态创建Activity模式》
1. 如何在运行时动态创建一个Activity; 2. 自定义ClassLoader并偷梁换柱替换想要加载的类; 3. 动态创建Activity模式开源项目“android-pluginmgr” 4. 代理模式与动态创建类模式的区别;