Android gradle apk拆分,设置versionCode

Day*_*ykm 9 android android-gradle-plugin

我正在尝试将应用程序拆分为abi特定的apks,但所有apks的版本号都是相同的.他们需要不同才能上传到游戏商店.我错过了什么吗?

splits {
    abi {
        enable true
        reset()
        include 'x86', 'armeabi', 'armeabi-v7a', 'arm64-v8a'
        universalApk true
    }
}
Run Code Online (Sandbox Code Playgroud)

小智 6

我想如果你想做一个快速的谷歌搜索,你会得到所有的答案.无论如何,这就是你的gradle应该是这样的.您错过了为不同的体系结构构建分配标识符.

    android 
    {

    def versionMajor = 1
        def versionMinor = 0
        def versionPatch = 0
        def versionBuild = 0

        defaultConfig {
            applicationId "com.example.app"
            minSdkVersion 15
            targetSdkVersion 22

            versionCode versionMajor * 10000 + versionMinor * 1000 + versionPatch * 100 + versionBuild
            versionName "${versionMajor}.${versionMinor}.${versionPatch}"
        }

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

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

        android.applicationVariants.all { variant ->
            // assign different version code for each output
            variant.outputs.each { output ->
                output.versionCodeOverride =
                        project.ext.versionCodes.get(output.getFilter(com.android.build.OutputFile.ABI), 0) * 1000000 + android.defaultConfig.versionCode
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)