上传同时支持 arm64-v8a 和 armeabi-v7a 的 APK

Posted

技术标签:

【中文标题】上传同时支持 arm64-v8a 和 armeabi-v7a 的 APK【英文标题】:Upload APK supporting both arm64-v8a and armeabi-v7a 【发布时间】:2021-06-05 20:17:47 【问题描述】:

我可以将包上传到 Google Play 控制台,同时支持 armeabi-v7a 和 arm64-v8a 设备吗?

如何通过 buildozer 创建这样的包?

【问题讨论】:

是的,我认为您可以在支持多种架构的 Google Play 控制台上上传包。这意味着您的应用程序具有本地库(用 c++ 编写),针对您想要支持的所有架构进行编译。您在项目的 gradle 文件中指定架构,因此如果您有这样的文件应该独立于 buildozer。 【参考方案1】:

build.gradle 中,您可以在defaultConfig 下添加对两种架构的支持。它应该看起来像这样:

defaultConfig 
    // ...
    ndk 
        abiFilters 'armeabi-v7a', 'arm64-v8a'
    

【讨论】:

我正在使用Buildozer。它与buildozer.spec 文件中的android.arch = arm64-v8a, armeabi-v7a 行相同吗?生成的包可以通过Google Play Console上传吗?生成的包较大是否有一些缺点? 是的。 arm64-v8a 是 Google 要求的 (source)。 armeabi-v7a 适用于 32 位设备,现在它不像 64 位设备那么普遍。我认为这个discussion 可以消除您对除了arm64-v8a 之外支持armeabi-v7a 的大小与优势的担忧。 好的,我会阅读并在下一个版本中尝试。

以上是关于上传同时支持 arm64-v8a 和 armeabi-v7a 的 APK的主要内容,如果未能解决你的问题,请参考以下文章

我们还需要在运行时使用新的 abi arm64-v8a 检测对霓虹灯的支持吗?

armeabi-v7a armerabi arm64-v8a区别

android开发libs下的armeabi、armeabi-v7a、arm64-v8a等及导入so所踩过的坑

arm64-v8a 是不是与 armeabi-v7a 兼容?

jni中arm64-v8a,armeabi-v7a,armeabi文件夹的意义和用法

arm64-v8a 静态成员模板 undefined reference to