Android 动态加载技术研究的一些文档

2015-12-02 14:15:53 +08:00
 kaedea
# Android Dynamical Loading
![android-dynamical-loading]( http://7xih5c.com1.z0.glb.clouddn.com/15-11-30/1635252.jpg "android-dynamical-loading")

## 基本信息

- Author :[kaedea]( https://github.com/kaedea)
- GitHub :[android-dynamical-loading]( https://github.com/kaedea/android-dynamical-loading)

## 动态加载
在 Android 开发中采用基于 ClassLoader 的动态加载技术,可以达到不安装新 APK 就升级 APP 的目的,也可以用来修复一些紧急 BUG 。

[Android 动态加载技术 简单易懂的介绍方式]( http://segmentfault.com/a/1190000004062866)

1. 动态加载技术在 Android 中的使用背景;
2. Android 的动态的加载大致可以分为“加载 SO 库”和“加载 DEX/JAR/APK ”两种;
3. 动态加载的基础是类加载器 ClassLoader ;
4. “加载 DEX/JAR/APK ”的三种模式;
5. 采用动态加载的作用与代价;
6. 除了 ClassLoader 之外的动态修改代码的技术( HotFix );
7. 一些动态加载的开源项目;
<br>

[Android 动态加载基础 ClassLoader 的工作机制]( http://segmentfault.com/a/1190000004062880)

1. 类加载器 ClassLoader 的创建过程和加载类的过程;
2. ClassLoader 的双亲代理模式;
3. DexClassLoader 和 PathClassLoader 之间的区别;
4. 使用 ClassLoader 加载外部类需要注意的一些问题;
5. 自定义 ClassLoader ( Hack 开发)
<br>

[Android 动态加载补充 加载 SD 卡的 SO 库]( http://segmentfault.com/a/1190000004062899)

1. 如何编译和使用 SO 库;
2. 如何加载 SD 卡中的 SO 库(也是动态加载 APK 需要解决的问题);
<br>

[Android 动态加载入门 简单加载模式]( http://segmentfault.com/a/1190000004062952)

1. 如何创建我们需要的 dex 文件;
2. 如何加载 dex 文件里面的类;
3. 动态加载 dex 文件在 ART 虚拟机的兼容性问题;
<br>

[Android 动态加载进阶 代理 Activity 模式]( http://segmentfault.com/a/1190000004062972)

1. 如何启动插件 APK 中没有注册的 Activity
2. 代理 Activity 模式开源项目“ dynamic-load-apk ”
<br>

[Android 动态加载黑科技 动态创建 Activity 模式]( http://segmentfault.com/a/1190000004077469)

1. 如何在运行时动态创建一个 Activity ;
2. 自定义 ClassLoader 并偷梁换柱替换想要加载的类;
3. 动态创建 Activity 模式开源项目“ android-pluginmgr ”
4. 代理模式与动态创建类模式的区别;
9715 次点击
所在节点    Android
2 条回复
codekiddle
2015-12-04 08:40:59 +08:00
感谢分享
lingdududu
2015-12-28 10:15:19 +08:00
很不错

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/240557

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX