为啥我不能发布游戏?

Posted

技术标签:

【中文标题】为啥我不能发布游戏?【英文标题】:Why can't I publish the game?为什么我不能发布游戏? 【发布时间】:2019-12-26 04:10:09 【问题描述】:

enter image description hereI 选择 arm64 (64 bit) 和 x86 和 amrv7 并在播放器设置中选择 build app bundle 所以但是当我想发布时,我有一个错误,比如:

错误

此版本不符合 Google Play 64 位要求

以下 APK 或 App Bundle 可用于 64 位设备,但它们只有 32 位本机代码:2. 在您的应用程序中包含 64 位和 32 位本机代码。使用 android App Bundle 发布格式自动确保每个设备架构只接收它需要的本机代码。这样可以避免增加应用的整体大小。

所有插件都可以在我的其他游戏中使用,但是新插件(=applovin sdk),这是一个系统广告,我如何理解 applovin sdk 对 64 位的支持?

为什么我不能发布游戏? 请帮帮我

我在某个星期遇到了这个问题,无法发布我的游戏?请帮我 我怎么了?

【问题讨论】:

您是否在使用任何只有 32 位二进制文​​件的原生插件? 这是另一种可能性。您在项目中使用的库或插件正在向项目构建添加 32 位引用。要检查这一点,请问自己添加了哪些软件包,并查看其中是否有任何与 Android 特定功能相关。 所有插件都可以在我的其他游戏中使用,但是新插件(=applovin),这是一个系统广告,我如何理解 applovin 对 64 位的支持? 如果您怀疑它与本机插件相关,我已经更新了下面的答案。 【参考方案1】:

进入项目属性,切换到项目后端IL2CPP。

Android 项目属性 -> https://docs.unity3d.com/Manual/class-PlayerSettingsAndroid.html IL2CPP 设置 -> https://docs.unity3d.com/Manual/IL2CPP.html

您可能已经做过的其他事情: https://docs.unity3d.com/Manual/BuildSettings.html

切换平台 -> 到 Android 确保您已设置 API 兼容性,并已通过 Android NPK 工具下载了所需的 API 版本。

根据您的错误,您还可以尝试暂时禁用 ARM7 选项。

[更新] 根据OP的回复,虽然以上是一般故障排除,但它似乎是本机插件。如果是这种情况,请使用以下技术来确定插件是否为 32 位。 1.创建一个新的android项目,确保它构建。在项目设置中设置 ARM64 而不是 ARM7。 2.只添加插件。重建项目。 3.如果有平台相关的异常可能是插件是32位的。

如果出现错误

    首先检查错误,它可能不相关(即红鲱鱼)。 返回插件站点,检查 64 位,同时检查插件是否有 git 源,例如在 GitHub 上。 如果是这样,您可能可以将插件重新编译为 64 位(单独的问题)。

【讨论】:

我都做了,所以我也有这个错误 我可以通过禁用 x86 目标架构来解决我的问题。 匿名类型,你好,我有两个问题:1-什么是NPK?以及如何下载? 2-什么是64位插件?我下载了sdk api(16 to 29) +NDK 16 for unity 2019.1.9 那么什么是GITHUB上的64位链接插件? @afshin 如果您使用 Unity,并且在 Unity 安装期间选择了 Android 选项,那么您将获得推荐的 Android NPK 版本。当您进入项目设置时,它是否将 NPK 列为可用,或者 NPK 的框是否为空?如果您现在遇到 NPK“缺失”或 SDK API 版本缺失的错误,您应该检查现有问题或提出新问题。您不需要该插件的 github 源,除非它仅是 32 位并且您需要 64 位。这仅适用于较旧的未维护插件。 @afshin 如果您不知道 NPK 是什么,我怀疑您在发布工作应用程序的过程中可能跳过了几个配置步骤。请查看 android 项目的设置文档并确保完成 Unity 中的所有步骤。即确保安装了 android 组件,并验证 NPK - 一旦完成 Unity 的设置配置,您就会知道。【参考方案2】:

我知道我回复有点晚了,但我认为解决方案是:

启用 IL2CPP 禁用 x86

【讨论】:

以上是关于为啥我不能发布游戏?的主要内容,如果未能解决你的问题,请参考以下文章

为啥我不能在 XNA 中保存我的 Xbox 360 游戏?

为啥我的神经网络不能正确分类这些井字游戏模式?

为啥我的电脑能上网却不能玩游戏?

为啥我在游戏里不能切换输入法?只能输入中文

为啥跑跑不能玩

为啥浏览器不能像游戏引擎那样每秒多次完全渲染 DOM,而不会与性能作斗争?