virtualapk爬坑心得
1.宿主和插件的工程build.gradle必须是 com.android.tools.build:gradle:2.1.3
gradle-wrapper 必须是 gradle-2.14.1-all
app的build,宿主的需要 apply plugin: 'com.didi.virtualapk.host'
插件的需要
// 插件配置信息,放在文件最下面
apply plugin: 'com.didi.virtualapk.plugin' virtualApk { packageId = 0x6f// 插件资源id,避免资源id冲突 (01不可以,不知道为啥) targetHost='../VirtualapkTest/app' // 宿主工程的相对路径或者绝对路径 applyHostMapping = true // 插件编译时是否启用应用宿主的apply mapping }
2.使用命令:gradle clean assemblePlugin
或者右方
构建插件项目生成apk时,提示错误:
错误1:Can't find (宿主项目路径)\app\build\VAHost\versions.txt
解决方法:clean rebuild插件和宿主项目
3.打开插件activity
Intent intent = new Intent();
intent.setClassName(PLUGIN_PACKAGE_NAME, PLUGIN_ACTIVITY_REFERENCEPATH);//PLUGIN_PACKAGE_NAME是插件的包名,PLUGIN_ACTIVITY_REFERENCEPATH是要打开的activity的全名
startActivity(intent);
4.要注意插件和宿主之间所有的资源文件最好不要重名,包括图片、xml、动画等等