转载请注明链接:https://blog.csdn.net/feather_wch/article/details/81608967
Android 插件化
修改版本:2018/8/12-1
插件化和组件化
1、什么是组件化?
- 组件化开发就是将一个app分成多个模块
- 每个模块都是一个组件(Module),开发的过程中这些组件相互依赖或者用于单独调试
- 最终发布的时候会将这些组件合并统一成一个apk。
2、什么是插件化?
- 插件化开发时将整个app拆分成很多模块。
- 这些模块包括一个宿主和多个插件,每个模块都是一个apk(组件化的每个模块是个lib)
- 最终打包的时候将宿主apk和插件apk分开或者联合打包。
3、插件化的好处
- 宿主和插件分开编译: 各个模块封装成不同的插件APK,不同模块可以单独编译,提高了开发效率。
- 并发开发: 不同的团队负责不同的插件APP,这样分工更加明确。
- 动态更新插件: 可以通过上线新的插件来解决线上的BUG,达到“热修复”的效果。
- 按需下载模块
- 解决了方法数超过限制的问题。
- 减小了宿主APK的体积。
4、插件化框架
- 360的RePlugin
- 滴滴的VirtualAPK
- 阿里巴巴的Atlas
5、热修复插件
- Tinker(腾讯)
- AndFix(阿里巴巴)
- Robust(美团)