android适配版本: android 16
前言:
开源盛行的插件化框架有很多,实现方式也有很多种。本项目是介绍如何加载dex文件(java代码)、so库(c++代码)、资源文件(resource)到虚拟机,围绕Android Framework源码,如何启动插件中Activity、Service、BroadcastReceiver、ContentProvider四大组件,从而了解到插件化中核心知识点。
注意点:若是实际项目中使用,推举使用成熟的插件化框架,存在的bug较少。
插件化教程核心点: 围绕Android 7.0 framewok层讲解相应的源码
- Android 插件化之ClassLoader加载Dex文件
- Android 插件化之ClassLoader加载so库
- Android 插件化之aapt修改资源前缀
- Android 插件化之加载插件资源
- Android插件化之动态替换Application
- Android 插件化之启动Activity
- Android 插件化之加载Service
- Android 插件化之加载BroadcastReceiver
- Android 插件化之加载ContentProvider
- Android 插件化之Fragment重建问题
备注点:以上插件化核心点的代码已经全部实现,详细介绍正在完善。
绕开 Android P以上非公开API限制
- AndroidHiddenApiBypass: 当前android9以上全部版本可用。
- FreeReflection :android 14及其以下可用。
资源参考: