优质的Android马甲包配置,让您畅享便捷体验

步骤

1、配置主module的build.gradle文件
2、配置Manifest.xml文件
3、设置Build Variants
4、处理差异化问题
5、解决常见问题

1.modle-build.gradle

应用插件: 'com.android.application'
android {
compileSdkVersion 29
defaultConfig {
applicationId com.xyz.app
minSdkVersion 15
targetSdkVersion 28
versionCode 1
versionName 1.0
testInstrumentationRunner android.support.test.runner.AndroidJUnitRunner
manifestPlaceholders = [APP_NAME: 'com.xyz.app.majiatxt'] // 配置主包的应用名称
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
// 马甲包
majiabao1.initWith(buildTypes.debug) // 以release的配置来初始化马甲包配置
majiabao1 {
// 修改马甲包的applicationId(这里是原包名后追加:com.xyz.app.majiabao1)
applicationIdSuffix .majia 

3、打开侧边框的Build Variants

在这里插入图片描述
可以看到已经有了,选择对应的版本,就会生成不同版本的马甲APP

4、资源替换

为了适应不同版本的马甲,您可以在src目录下创建与之前马甲包相同后缀的文件夹。例如,在app>src下创建一个名为majiabao1的文件夹(与app>src>main同级),然后在该文件夹中创建res目录。您可以参考main目录中的资源文件,并将相应的差异化资源放入这个新建立的res目录中。这里就不再进行演示了。

5、常见问题及解决

1.Manifest merger failed : Attribute application@label value=(@string/app_name)
原因:
原因是工程A和工程B中的AndroidManifest.xml文件中都使用了app name,合并manifest的过程出现了问题
应对策略:
添加 以下两句

//B工程示例 

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注