building with cordova для android создает неправильный код версии
выполнив команду cordova build --release android
создает apk, который имеет код версии 70. в config.xml-файл, для виджета я установил его как
<widget id="com.example.myapp"
android-versionCode="7"
version="0.9.1"
>
как получить cordova-cli для создания apk с кодом версии 7?
под управлением aapt.exe l -a
на сгенерированном apk показывает A: android:versionCode(0x0101021b)=(type 0x10)0x46
0x46 будучи 70, если я jarsigner apk, и zipalign и загрузить, google также говорит мне, что код версии 70.
2 ответов
Я нашел ответ на свою проблему в этом разделе platforms/android/build.gradle
в строке 178,
versionCode cdvVersionCode ?: Integer.parseInt("" + privateHelpers.extractIntFromManifest("versionCode") + "0")
в конце это + "0"
таким образом, поворачивая мой код версии от 7 до 70. Удаление + "0"
В конце и изменение строки 178 на следующее решили эту проблему.
versionCode cdvVersionCode ?: Integer.parseInt("" + privateHelpers.extractIntFromManifest("versionCode"))
под управлением aapt.exe l -a
на сгенерированном apk теперь показывает A: android:versionCode(0x0101021b)=(type 0x10)0x7
У меня была такая же проблема, я использую Cordova 4.3.0. Мой код версии в AndroidManifest.xml был "1 "и versionCode в.АПК проходил как "12". Если вы посмотрите на фрагмент кода после строки, на которую ссылаетесь, построение нескольких версий добавит "2" для arm7 и "4" для x86. Я вроде как понимаю, почему это было сделано, но мне кажется, что лучше позволить разработчикам определить код версии, который они хотят.