AndroidStudio自定義包名
阿新 • • 發佈:2018-11-11
在你的app/build.gradle下面新增
打包時間 (可選)
static def releaseTime() {
return new Date().format("yyyy-MM-dd", TimeZone.getTimeZone("UTC"))
}
在你的app/build.gradle檔案中的android 方法下面新增如下程式碼:
applicationVariants.all { variant ->
variant.outputs.each { output ->
output.outputFile = new File(output.outputFile.parent, variant.applicationId + "-" + buildType.name+"-" +defaultConfig.versionName + "-" + defaultConfig.versionCode + "-${releaseTime() }.apk" );
}
}
- buildType.name 打包型別 可以選擇release,debug 對應build.gradle下面的buildTypes
- defaultConfig.versionName 是版本名
- defaultConfig.versionCode 是版本號
- ${releaseTime() } 打包時間戳,就是文章開始位置的程式碼,這裡使用佔位符表示
- variant.applicationId 應用程式id ,對應build.gradle下Android方法中defaultConfig 中的applicationId
完整程式碼如下:
apply plugin: 'com.android.application'
static def releaseTime() {
return new Date().format("yyyy-MM-dd", TimeZone.getTimeZone("UTC"))
}
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "com.haiquan.mvpdemo"
minSdkVersion 15
targetSdkVersion 25
versionCode 1
versionName "v1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug{
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
applicationVariants.all { variant ->
variant.outputs.each { output ->
output.outputFile = new File(output.outputFile.parent, variant.applicationId + "-" + buildType.name+"-" +defaultConfig.versionName + "-" + defaultConfig.versionCode + "-${releaseTime() }.apk" );
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
testCompile 'junit:junit:4.12'
}