VersionCodeの設定

Android Studio + PhoneGapの開発の場合、Google Playに登録するとき、必ず前のバージョンより大きい数字を指定しなければならないVersionCodeが、Android Studioが勝手にbuild時にAndroidManifest.xmlを書き換えるようになっているので、AndroidManifest.xmlの値を増やしても、作成されるapkは、昔のままで登録できずに困った。

build.gradle(corodova5.0.0)にバグがあったようで、versionCodeの最後に”0”を追加しており一桁大きい数字に設定されて登録されていました。

なので、build.gradleの

versionCode cdvVersionCode ?: Integer.parseInt("" + privateHelpers.extractIntFromManifest("versionCode") + "0")

の部分を

versionCode cdvVersionCode ?: Integer.parseInt("" + privateHelpers.extractIntFromManifest("versionCode"))

に修正する必要があります。

最初に、phonegap buildして、Android Studioにインポートしたら
AndroidManifest.xmlのversionCodeに現在最新のコードを設定し、versionNameを希望の値に修正

android:versionCode="10008" android:versionName="1.1.1"

次のバージョンアップ時は、現在のversionCodeをAndroidManifest.xmlのversionCodeに記入し、新しいversionNameをAndroidManifest.xmlに記載してbuildすると、インクリメント(+8されていた)されたものが作成されました。

gradle.propertiesというファイルをbuild.gradleと同じandroidディレクトリに置いて中身を

cdvVersionCode=10009

のように指定すれば、指定した値に設定できます。

カテゴリー: 開発環境