私の場合、古いapkファイル名には署名情報がアライメントされておらず、署名されていません。これらの古いファイル名は、この方法では、モジュールのGradleファイルに名前が変更されました:このリネームの結果でapkファイル名に署名情報を追加する
versionCode buildNumber()
versionName "${versionMajor}.${versionMinor}"
、署名情報(:
applicationVariants.all { variant ->
variant.outputs.each { output ->
output.outputFile = new File(
output.outputFile.parent,
output.outputFile.name.replace(".apk", "-${variant.versionCode}-${variant.versionName}.apk"))
}
}
バージョンコードとバージョン名は、次のように設定してしまいましたアライメントされていないか、または符号なし)がバリアントバージョンコードの前にありました。
私はgradle:3.0.0-beta6を使用しています。したがって、私は以前の方法を使用することはできません。なぜなら、outputFileは読み取り専用に変更され、名前を変更することができないからです。今私はこのようになります私のGradle、新しい名前変更メソッドを追加しようとしました:新しいAPK名はほぼ古いもののように見え、これと
android.applicationVariants.all { variant ->
variant.outputs.all {
outputFileName = "${archivesBaseName}-${variant.baseName}-${variant.versionCode}-${variant.versionName}.apk"
}
}
が、署名情報ベース名とversionCodeの間で不足しています。 まだ署名されていないので、署名のない情報が必要です。
誰でもハードコーディングなしでこの情報を追加する方法を知っていますか?
この情報は、アプリが署名されている場合は消えますが、可能であれば名前の変更方法は変更されません。