【问题标题】:Diagnosing failure to load from OBB file / split APK expansion file android build (in Unity)诊断无法从 OBB 文件加载/拆分 APK 扩展文件 android 构建(在 Unity 中)
【发布时间】:2018-02-05 11:01:24
【问题描述】:

我正在尝试运行一个超过 100 兆字节的 Android 项目。

当我构建一个简单的超大 APK 文件时它工作正常,但这对于 Play 商店是不合法的。

所以我从 Unity 导出它并勾选“拆分应用程序二进制”框,然后将其导入 Android Studio,然后在那里构建 APK 文件(由于 Unity 中的 gradle 版本问题)。

当我安装并运行它时,我能够检测到 OBB 文件的存在(使用 GooglePlayDownloader.GetMainOBBPath 示例代码)但是当我尝试加载应该在其中的任何文件时(例如使用, UnityEngine.Resources.Load),它返回 NULL。

我制作了一个迷你项目来测试 OBB 文件,使用相同的基本构建过程,它在那里工作。我不知道有什么区别。 (真正的项目要大得多,并且包含很多 Unity 插件,我一直在对迷你项目进行测试,看看它们中是否有任何破坏它 - 到目前为止,没有运气。我有自定义 gradle 和 AndroidManifest 文件来制作这些插件一起工作,他们在非拆分测试中这样做。)

是否可以通过 Unity 代码查看 OBB 文件并查看其中的内容,或者以其他方式确认文件的完整性/兼容性,或者从 Android Studio Logcat 窗口获取更有用的错误消息?

请注意,当我将 OBB 文件作为主文件复制时。(捆绑版本代码)。(包名) ).obb 放到 Android/Obb/(package name) 子目录下。

【问题讨论】:

    标签: android unity3d apk


    【解决方案1】:

    更新: 显然,您可以看到 OBB 文件的内容只是将其重命名为 .ZIP 文件或类似文件。

    我的具体问题似乎是我的 AndroidManifest.xml 文件中的“unity.build-id”与 OBB 文件中 Assets 文件夹中的 0K 文件的名称不匹配。

    【讨论】:

    • 我真的只是为此烧了几天......这就是解决方案。我按照正常情况将 Vuforia 数据复制脚本全部到位等,但它不会复制文件或加载下一个场景。这完全是由于Android清单中的“unity.build-id”与您所说的OBB Assets文件夹中的0kb文件不匹配!!!!!!谢谢!!!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-09
    相关资源
    最近更新 更多