将 ARM-v7 和 x86 的单独 APK 上传到 Google Play

Uploading Separate APKs for ARM-v7 and x86 to Google Play

我在 Unity3D 中制作了一个 Android 游戏。我已经在 Google Play 上发布了该游戏。

我目前提供的 APK 适用于 ARM-v7 和 x86 本机平台。我想为每个文件上传一个单独的 APK 文件,以减少它们占用的存储空间 space。两个平台的 APK 大小为 27MB,单独的 APK 各约为 19MB。安装后的大小分别为 56MB 和 43MB。这是一个显着的区别。 我发现的唯一信息与 Google Play Developer Console 中的 APK 选项卡有关,该选项卡现已弃用。 此外,我尝试在相同的版本代码下上传单独的 APK 文件,但我收到一条错误消息,指出两个 APK 不能具有相同的版本代码。 当我尝试在不同的版本代码下上传它们时,我收到一条错误消息,指出较低版本的 APK 已完全被较新版本覆盖。

如何为不同的原生平台上传单独的 APK 文件?

感谢您的帮助。

I tried to upload them under different version codes

不同的版本代码表示不同的版本,但仅限于"newer"或"older"。

How can I upload separate APK files for different native platforms?

有多个 APK 支持功能:

By publishing your application with multiple APKs, you can:

  • Support different OpenGL texture compression formats with each APK.
  • Support different screen sizes and densities with each APK.
  • Support different device feature sets with each APK.
  • Support different platform versions with each APK.
  • Support different CPU architectures with each APK (such as for ARM, x86, and MIPS, when your app uses the Android NDK).

https://developer.android.com/google/play/publishing/multiple-apks.html

使用新的 'Manage Releases' 系统,您创建一个版本并将两个具有不同版本代码的 apk 添加到同一个版本。您必须在 build.gradle:

中使用类似这样的内容来限制每个平台的原生平台
splits {
        abi {
            enable true
            reset()
            include 'armeabi-v7a', 'x86'
            universalApk false
        }

x86 版本应该有更高的版本代码,否则 x86 设备将获得 armv7a 版本,因为它们几乎总是与该架构兼容。