1.配置apk输出名
在app的build.gradle 的android{}添加如下代码:
//apk name
android.applicationVariants.all { variant ->
variant.outputs.all { output ->
def outputFile = output.outputFile
if (outputFile != null && outputFile.name.endsWith('.apk')) {
def date = new Date().format("yyyyMMdd", TimeZone.getTimeZone("GMT+08"))
outputFileName = "CommonDemo_${variant.versionCode}_v${variant.versionName}_${buildType.name}_${date}.apk"
}
}
}
输出文件名格式:应用名_版本code_版本号_release/debug_日期.apk
2.关于应用的包名
1.清单文件package配置的包名:是代码中每个java文件上方的显示的包名。
2.applicationId(build.gradle中的字段):表示的是应用的唯一ID标识,保证了应用的唯一性(其实就是相当于一个手机安装过含有这个ID的APP后就不能重复安装了,当然还牵扯到签名文件),但是一般情况下是和清单文件中写的包名的值是一样的。
3.applicationIdSuffix:修改应用唯一ID标识。其实就是在applicationId加上后缀进行区分。只有这样把应用的唯一标识改了,就可以在手机中同时安装同一一个应用的上线版本和测试版本两个app了,否则不允许安装。
例子:手机同时安装两个APP,一个是发布app,一个是测试app,修改applicationId。通过代码:this.getPackageName()得到的包名发生了改变。
修改applicationId两种方法:在app build.gradle的android{}中添加如下代码
buildTypes {
debug {
applicationIdSuffix "dev_1"
}
release {
applicationIdSuffix "release"
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}