首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Unity Android 64位-不兼容错误

Unity Android 64位-不兼容错误
EN

Stack Overflow用户
提问于 2021-02-11 03:33:31
回答 1查看 184关注 0票数 0

在原生Android Unity集成到Play Store中遇到了一个问题。我将其作为项目从Unity中提取出来,并将其作为库迁移到我们的本机应用程序中。

尝试将.AAB上载到Play Store时,出现以下错误:

代码语言:javascript
运行
复制
This release is not compliant with the Google Play 64-bit requirement.
The following APKs or App Bundles are available to 64-bit devices, but they only have 32-bit native code: [10406]

我已经检查了以下内容:

首先,我遵循了官方指南中的步骤:https://developer.android.com/distribute/best-practices/develop/64-bitUnity版本: 2019.4.9f1,安卓播放器设置我已经选择了ARMv7和ARM64。在此版本的Unity中没有x86选项。作为IL2CPP列出的脚本后端

在build.gradle文件中,我列出了: ndk { abiFilters 'armeabi-v7a','arm64-v8a‘},因为我们希望同时支持32位和64位

我已经使用了Android Studio内部的APK Analyzer工具来分析APK和AAB版本的应用程序。lib/armeabi-v7a和lib/arm64-v8a文件夹中都列出了相同的10个'.so‘文件。

接下来,我结合使用apktool和'file‘命令来提取应用程序的APK和AAB版本的内容,并仔细检查arm64-v8a文件夹中的'.so’文件是否确实是64位架构

我测试过在64位设备上使用以下命令直接安装APK版本成功:

% adb安装--abi arm64-v8a app.apk执行流式安装成功

我正式没有想法了,我确实联系了Play Store寻求帮助,但他们已经两天没有回应了,所以我有点坐立不安。

有没有人知道我可能错过了什么?

编辑:忘了提一下,这也在应用程序和unityLibrary build.gradle文件中:

代码语言:javascript
运行
复制
packagingOptions {
        doNotStrip '*/armeabi-v7a/*.so'
        doNotStrip '*/arm64-v8a/*.so'
    }

这是一个包含我的简化gradle文件的repo,如果它有帮助的话:https://github.com/azdragon2/unityandroid-stackoverflow-question谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-25 11:49:54

这个问题源于我使用的Unity库中包含的'.bc‘文件的使用。这些bc文件始终被解释为32位。您必须升级您正在使用的包含这些文件的库。

您可以通过对APK或AAB文件运行以下命令来确定是否存在相同的问题:

代码语言:js
复制
zipinfo -1 app.apk | grep \.bc$
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66143801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档