Как изменить код версии вашего apk в Cordova

Если вы читаете эту статью и у вас нет этой проблемы, то вы можете спросить себя, почему я должен заботиться о коде версии моего приложения? не должно ли это быть автоматически обработано Cordova? Конечно, у вас есть причина, однако это проблема, она автоматически обрабатывается, и это будет создавать проблемы, когда вы пытаетесь загрузить новый APK в Google Play (как правило, это не должно вызывать проблем, если вы не обновите свою платформу Android с очень старой версии) ,

На прошлой неделе я работал со старым проектом Cordova, этот проект был в версии 1.3.3по крайней мере, это было значение version атрибут тега виджета в config.xml файл проекта (идентифицируется кодом версии 103038). Я решил обновить Платформу Android до последней версии, используя cordova platform update android, После внесения изменений я просто увеличил версию до 1.3.4 (просто был увеличен номер релиза исправления ошибки), затем я собрал приложение и попытался опубликовать его в Google Play. К моему удивлению, я столкнулся со следующей проблемой:

Код версии вашего APK должен быть выше, чем [версия].

Этот номер является внутренним номером версии, который используется только для определения того, является ли одна версия более новой, чем другая, причем более высокие числа указывают на более свежие версии. Это не номер версии, показанный пользователям; это число устанавливается versionName приписывать. Значение должно быть установлено как целое число, например, «50» или «500». Вы можете определить его по своему усмотрению, если каждая последующая версия имеет большее число.

Это не имело никакого смысла, потому что я увеличил версию, и Cordova должна сделать это автоматически для меня. Затем я использовал aapt (Android Asset Packaging Tool), чтобы получить информацию о моем APK. Этот инструмент является частью SDK (и системы сборки) и позволяет просматривать, создавать и обновлять Zip-совместимые архивы (zip, jar, apk). Он также может компилировать ресурсы в бинарные активы.

Чтобы сбросить информацию, которую я использовал:

aapt dump badging MyReleasedFile.apk

После того, как я просмотрел информацию, действительно version приложения было выше, но не version code приложения. APK, который я загрузил, был 10304, это, конечно, меньше, чем 103038.

По-видимому, эта ошибка была вызвана новой платформой Android, чья система автоматического управления версиями не работает, как в предыдущих версиях. Чтобы решить эту проблему, мне просто нужно было изменить код версии вручную.

Изменить код версии в манифесте

Чтобы изменить код версии вашего apk в Cordova, вам нужно предоставить новый атрибут в тег виджета вашего файла config.xml. Атрибут android-versionCode переопределит код версии по умолчанию, сгенерированный cordova, и исправит ошибку в Play Store, если она у вас есть:


Теперь 103040 выше, чем 103038, Удачного кодирования!

Ссылка на основную публикацию
Adblock
detector