異なるフレーバーのアプリがあります。各フレーバーには 2 つの buildTypes があります。
マニフェストのいくつかの行の名前を変更した後、apk の名前も変更します。すべて正常に動作します - 同じ apk を 2 回取得するのはなぜでしょうか? 一度改名せず、一度改名...
異なる名前を持つ同じアプリの短い例:
- "myApp-flavor-buildType.apk" (名前は変更されていません)
- "myApp-appName-buildType-version.apk" (名前が変更された apk)
私のbuild.gradleファイルのコードは次のとおりです。
// *** OVERRIDE data in MANIFEST ***
android.applicationVariants.each { variant ->
variant.processManifest.doLast {
overrideDataInManifest(variant)
}
}
def overrideMapsKey(buildVariant){
def appName = getAppName(buildVariant)
// override line ... this is not necessary to this question
renameAPK(buildVariant, appName)
}
// *** RENAME APK ***
def renameAPK(buildVariant, appName){
def apk = buildVariant.packageApplication.outputFile;
def newName = "";
// get data for apk renaming
def versionName = android.defaultConfig.versionName
def versionNameSuffix = buildVariant.buildType.versionNameSuffix
if(versionNameSuffix.toString().equals("null"))
versionNameSuffix = ""
def buildTypeOfApp= buildVariant.buildType.name
if (buildVariant.zipAlign) {
newName = "etscanner-" + appName + "-" + buildTypeOfApp.toUpperCase() + "-v" + versionName + versionNameSuffix + ".apk"
}else{
newName = "etscanner-" + appName + "-" + buildTypeOfApp.toUpperCase() + "-v" + versionName + versionNameSuffix + "-ALIGNED" + ".apk"
}
buildVariant.packageApplication.outputFile = new File(apk.parentFile, newName);
}
何が起こっているのか、2 つの APK を取得せずに同じタスクが可能かどうかを知りたいだけです。