В настоящее время я работаю над проектом в Кордове и столкнулся с проблемой, что 8 был добавлен таинственным образом в версию Код моего проекта. Например: Мой исходный код версии был 100, новый код версии 1008Почему Cordova/Phonegap добавляет 8 к моему коду версии Android?
Я отследил проблему через весь мой конвейер сборки и нашел ответственный код в сценарии Gradle Build.
if (Boolean.valueOf(cdvBuildMultipleApks)) {
productFlavors {
armv7 {
versionCode cdvVersionCode ?: defaultConfig.versionCode + 2
ndk {
abiFilters "armeabi-v7a", ""
}
}
x86 {
versionCode cdvVersionCode ?: defaultConfig.versionCode + 4
ndk {
abiFilters "x86", ""
}
}
all {
ndk {
abiFilters "all", ""
}
}
}
} else if (!cdvVersionCode) {
def minSdkVersion = cdvMinSdkVersion ?: privateHelpers.extractIntFromManifest("minSdkVersion")
// Vary versionCode by the two most common API levels:
// 14 is ICS, which is the lowest API level for many apps.
// 20 is Lollipop, which is the lowest API level for the updatable system webview.
if (minSdkVersion >= 20) {
defaultConfig.versionCode += 9
} else if (minSdkVersion >= 14) {
defaultConfig.versionCode += 8
}
}
Я не знаю, почему Cordova считает, что это правильно, чтобы изменить свою версию кода, и, кроме того, я не уверен, что такое поведение является правильным ... это не должно добавить число, а не добавлять его?
Могу ли я просто удалить соответствующий раздел в build.gradle или есть какой-то скрытый смысл этого поведения?
Это приятно. Я думал, что ошибся, он все еще находится в 6.0.0 –
Кажется, что исправление было [недавно объединено] (https://github.com/apache/cordova-android/pull/270) для кордовы-андроида недавно, но еще нет (у Cordova-android 5.1.1 нет исправления) –
Это, похоже, исправлено в Cordova 6.2.0. Однако теперь, когда дополнительная цифра больше не добавляется к коду версии, APK, которые я создаю с использованием этой версии Кордовы, всегда имеет меньший код версии, чем предыдущие, и, следовательно, Google Play не принимает эти APK. – Ehsan