0.效果
开发过程中,因为种种原因,有时需要在同一手机上安装测试版和生产版,所需效果如下:
1.创建productFlavors
在APP的gradle中添加:
android {
...
//创建productFlavors
productFlavors {
ceshi{//配置测试版包名和应用名
applicationId "ceshi.yb.com.wanandroid"
manifestPlaceholders = [APP_NAME: "@string/app_name_ceshi"]
}
shengchan{//配置生产版包名和应用名
applicationId "shengchan.yb.com.wanandroid"
manifestPlaceholders = [APP_NAME: "@string/app_name_shengchan"]
}
}
}
Error:All flavors must now belong to a named flavor dimension. Learn more at https://d.android.com/r/tools/flavorDimensions-missing-error-message.html
在defaultConfig 中加上:
defaultConfig {
...
flavorDimensions "versionCode"
}
再重新编译下就OK了.
2.创建统一文件夹
切换到Project模式的目录:
在src目录下新建ceshi(/shengchan)包:
再新建以下包和文件:
资源文件同:
调试时点击 Build Variant 选择自己需要的版本即可正常引用
3.配置不同的应用名或其他属性
首先strings.xml中添加:
测试版WanAndroid
生产版WanAndroid
然后manifest中改下lable:
android:label="${APP_NAME}"//引用gradle中定义的变量
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
打包时同时选择两个即可:
源码已提交到GitHub,可以的话请顺便点个小星星。