升级到最新版本的Unity可以解决Apple的IPv6政策吗?

Upgrade to lastest version of Unity can solve IPv6 policy of Apple?

我刚读了几天关于 Unity 的文章,目的是制作一个简单的游戏,然后导出到 iOS 和 Android。如您所知,从 2016 年 1 月 6 日起,Apple 要求所有提交到 Appstore 的应用程序必须支持 IPv6 连接。

所以如果我把当前的Unity升级到最新版本,我可以通过这个政策吗?

So if I upgrade my current of Unity to lastest, can I pass this policy?

。升级 Unity 不会解决所有 IPv6 问题。尽管如此,您仍然需要升级 Unity 以便修复一些具有 IPv6 错误的网络 API。如果这样做了,那么您必须返回到您的代码并手动支持 IPv6。

如果您使用的唯一网络代码是 WWWUnityWebRequest,那么更新后您就可以了,应该忽略此 post 的其余部分。

如果您使用了 SocketNet 命名空间中的任何内容,那么您需要进行大量修复。

来自 Unity 的有用信息。

1。如果您的代码中有类似 IPAddress.AnyIPAddress.Loopback 的内容,您还必须支持 IPv6 版本 IPAddress.IPv6AnyIPAddress.IPv6Loopback.

通常与 AddressFamily.InterNetwork 比较的

2.IPAddress.AddressFamily 也应该有 IPv6 版本AddressFamily.InterNetworkV6.

3。必须删除任何硬编码的 IP 地址,例如环回地址 (127.0.0.1)。您必须在 运行 时间内使用主机名或将主机名转换为 ip。

4.If 您正在使用 ping 功能,暂时删除它并实现您自己的 ping 功能,直到它被修复为可以与 IPv6 一起使用。上次查的时候没修好

最后,您可以通过问题中的函数来查看是否支持IPv4IPv6