Максимальное значение для кода версии?
Нам всегда нужно увеличивать versionCode
на некоторый произвольный номер, чтобы опубликовать его в google play.
Есть ли предел этому значению и что произойдет, если оно будет достигнуто?
defaultConfig {
applicationId "my.app"
minSdkVersion 15
targetSdkVersion 22
versionCode 65
versionName "1.05"
setProperty("archivesBaseName", "myapp-$versionCode")
}
Ответы
Ответ 1
Обновление 08/11/2016 (UTC):
Документы были обновлены. Не старое значение MAX_INT
не 2000000000.
Предупреждение: Наибольшее значение Google Play позволяет versionCode
является 2100000000.
Кросс-пост для наглядности здесь.
Похоже, что в Google недавно произошли изменения, в результате чего максимальная versionCode
кода только до 2000000000.
Ссылка: ошибка консоли разработчика Google Play: код версии вашего APK высокий, и вы рискуете не иметь возможности обновить ваш APK
PS: Для тех, кто планирует предоставить ссылку на официальную документацию, где упомянутое максимальное значение равно 2147483647, сначала прочтите ответ в посте, на который я ссылался. В нем упоминается, что по состоянию на текущую дату (10.08.2016), он до сих пор не обновлен.
Ответ 2
В соответствии с документация по android и gradle документация DSL:
android:versionCode
- Значение integer
, которое представляет версию кода приложения по сравнению с другими версиями.
Проверка документа java по умолчанию, тип данных int
- это 32-разрядное двухзначное целочисленное целое число с минимальным значением -2 ^ 31 и максимальное значение (2 ^ 31) -1.
Тогда максимальное значение 2 ^ 31-1.
Ответ 3
Начиная с Android Pie (9), код версии будет long
(исходный код). Максимальное значение long
составляет 9 9,223,372,036,854,775,807
поэтому здесь не следует сталкиваться с какими-либо проблемами, касающимися длины.
Обратите внимание, что это все еще int
в более старых версиях Android, так что это относится только к вам, когда ваш minSdkVersion
28 или выше.