Как устранить конфликт между кодами версий расщепленных приложений и пакетов? - PullRequest
1 голос
/ 24 июня 2019

В прошлом я использовал следующую конфигурацию в своем файле Gradle для генерации кода версии с использованием apk-разбиения:

splits {
        abi {
            enable true
            reset()
            include 'x86', 'armeabi', 'armeabi-v7a', 'arm64-v8a'
            universalApk true
        }
    }


project.ext.versionCodes = ['armeabi': 1, 'armeabi-v7a': 2, 'arm64-v8a': 3, 'mips': 5,
                                'mips64' : 6, 'x86': 8, 'x86_64': 9]

    android.applicationVariants.all { variant ->
        variant.outputs.each { output ->
            output.versionCodeOverride =
                    project.ext.versionCodes.get(output.getFilter(
                            com.android.build.OutputFile.ABI), 0) * 10000000 +
                            android.defaultConfig.versionCode
        }
    }

Используя эту конфигурацию, я получаю коды версии, такие как 80000034, 20000034, 10000034 для x86, armeabi-v7a, armeabi соответственно.

Поскольку теперь мы можем использовать комплекты приложений, я хотел бы пропустить этот код и напрямую использовать комплекты.

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

Можете ли вы сказать мне, как разрешить конфликт междукоды версий расщепленных apks и связок?

1 Ответ

2 голосов
/ 24 июня 2019

Используйте versionCode 90000035, так как это первое число выше всех других версий, которые ваши пользователи получали раньше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...