android: versionCode - целочисленное значение, представляющее версию кода приложения относительно других версий.
Значение является целым числом, так что другие приложения могут его программно оценить, например, чтобы проверить отношения обновления или понижения. Вы можете установить значение на любое желаемое целое число, однако вы должны убедиться, что в каждом последующем выпуске вашего приложения используется большее значение. Система не применяет это поведение, но увеличение значения при последующих выпусках является нормативным.
android: versionName - строковое значение, представляющее версию выпуска кода приложения, как это должно быть показано пользователям.
Значение является строкой, так что вы можете описать версию приложения как строку .. или как любой другой тип абсолютного или относительного идентификатора версии.
Как и в случае android: versionCode, система не использует это значение для каких-либо внутренних целей, кроме как для того, чтобы приложения могли отображать его пользователям. Службы публикации также могут извлекать значение android: versionName для отображения пользователям.
Как правило, вы выпускаете первую версию своего приложения с versionCode, установленным в 1, затем монотонно увеличиваете значение с каждым выпуском, независимо от того, является ли выпуск основным или второстепенным. Это означает, что значение android: versionCode не обязательно сильно напоминает версию выпуска приложения, которая видна пользователю (см. Ниже android: versionName). Приложения и службы публикации не должны отображать это значение версии для пользователей.