7

Android スタジオは、デフォルトの apk 名を app-(release|debug).apk として生成します。
のようにアプリのパッケージ名と同じ apk ファイル名を生成する方法com.example-debug.apk

4

5 に答える 5

2

このリンクを見ることができます。release|debug.apkまたはファイルブラウザで必要な名前で名前を変更する非論理的なオプション。

このコードはあなたに役立つかもしれません:

buildTypes {
release {
    minifyEnabled false
    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    applicationVariants.all { variant ->
        variant.outputs.each { output ->
            def formattedDate = new Date().format('yyyyMMddHHmmss')
            def newName = output.outputFile.name
            newName = newName.replace("app-", "$rootProject.ext.appName-") //"MyAppName" -> I set my app variables in the root project
            newName = newName.replace("-release", "-release" + formattedDate)
            //noinspection GroovyAssignabilityCheck
            output.outputFile = new File(output.outputFile.parent, newName)
        }
    }
}
    debug {
    }
}

あなたのコードを楽しんでください:)

于 2015-09-08T05:21:47.273 に答える
0

プロジェクトの最上位ディレクトリに customname.gradle という名前のファイルを作成します。このコードをその中に入れます。

android.applicationVariants.all { variant ->;
def appName
//Check if an applicationName property is supplied; if not use the name of the parent project.
if (project.hasProperty("applicationName")) {
    appName = applicationName
} else {
    appName = parent.name
}

variant.outputs.each { output ->;
    def newApkName
    //If there's no ZipAlign task it means that our artifact will be unaligned and we need to mark it as such.
    if (output.zipAlign) {
        newApkName = "${appName}-${output.baseName}-${variant.versionName}.apk"
    } else {
        newApkName = "${appName}-${output.baseName}-${variant.versionName}-unaligned.apk"
    }
    output.outputFile = new File(output.outputFile.parent, newApkName)
}}

次に、アプリ モジュールの gradle にこのコードを追加します

apply from: "../customname.gradle"
于 2015-09-08T06:52:00.657 に答える