【发布时间】:2016-06-09 10:53:28
【问题描述】:
为了能够再次提交到应用商店(对于已发布的游戏),我们必须让 IPv6 工作。所以我们将 Unity 更新到了 5.3.5p2 版本(可用的最新修补版本)
我们重新设计了所有的网络接口(我们过去使用经典的 http 请求进行后端服务器 com 和套接字连接进行资产下载),我们用 UnityEngine.Experimental.Networking 中的 UnityWebRequest、DownloadHandler 和 UploadHandler 交换了所有内容
在编辑器和 android 上一切正常,但对于 iOS,它只是...崩溃。
我们正在使用:Unity 5.3.5p2 代码 7.2 和装有 iOS 9.3.2 的 iPad2 构建设置: IL2CPP 通用架构(最低 iOS 7.1) API 级别 .Net 2.0 剥离引擎代码设置为关闭 AOT-Compile 选项设置为:mint-trampoline 512(我们将其用于单脚本后端) 在 Xcode 上: 位码已禁用 优化级别设置为(用于发布和调试):无 [-O0] 这是游戏运行时我们在控制台上遇到的错误:
无法在其中找到方法 GetProgress [UnityEngine.dll]UnityEngine.Experimental.Networking.DownloadHandler . . 在中找不到方法 ReceiveContentLength [UnityEngine.dll]UnityEngine.Experimental.Networking.DownloadHandler . . [项目名称] 是用优化编译的 - 步进可能会表现 奇怪;变量可能不可用。
(我们非常简单地使用托管静态缓冲区实现了 DownloadHandlerScript)
当我们使用 mono 作为脚本后端进行构建时,一切正常。但是 IL2CPP 对我们来说是强制性的。 感谢您的帮助。
【问题讨论】:
标签: ios unity3d crash ipv6 il2cpp