最近要求利用插件化框架来开发项目,于是乎研究了一下,发现市面上已有的插件化框架大多数已经停止更新,甚至代码结构还是eclipse样式的...只有滴滴出品的VirtualAPK还比较新,经过一段时间的摸索,把接入过程及遇到的问题分享一下,如有不妥之处,欢迎各位大佬拍砖。
项目结构
app为宿主module,plugindemo和plugindemo2为两个插件module,communication为通信module
1 框架引入
在项目根目录的build.gradle里添加
classpath 'com.didi.virtualapk:gradle:0.9.8.4'
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0'
classpath 'com.didi.virtualapk:gradle:0.9.8.4'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
在宿主(app)的build.gradle的顶端添加
apply plugin: 'com.didi.virtualapk.host'
apply plugin: 'com.android.application'
apply plugin: 'com.didi.virtualapk.host'
进行插件实例化,在Application中添加
@Override
protected void attachBaseContext(Context base) {
super.attachBaseConte