【问题标题】:App Rejected with iOS IPv6 network应用程序被 iOS IPv6 网络拒绝
【发布时间】:2016-11-24 17:55:03
【问题描述】:

昨天,我提交了我的应用以供审核,但我收到了来自 Apple 的这条消息:

在通过连接到 IPv6 网络的 Wi-Fi 运行 iOS 9.3.2 的 iPad iPhone 上进行审查时,我们发现您的应用存在一个或多个错误。

具体来说,经过审核,我们发现该应用程序仍然遇到加载问题,无法查看应用程序内容。

我的应用使用了 ionic 框架,我该如何解决这个问题?

我已经使用域访问我的服务器,但是这个问题仍然存在。

【问题讨论】:

  • 您的 API 调用使用 http 还是 https ?
  • 请检查您的服务器响应。它应该在 Apple 测试时工作。他们看不到内容。
  • @jinson PL:您的应用程序是否通过以下流程获得批准??
  • 从我的 iOS 应用程序(设备)调用 API 到服务器时。我的设备已连接到 IPv6 网络。我调用的 API 是 IPv4 网络。我使用 swift 创建了应用程序,我使用 Alamofire 调用 API 和 Reachability 来检查 Internet 连接。我应该为此做些什么。我需要从应用程序端做的任何事情

标签: ios ionic-framework ipv6


【解决方案1】:

是的。根据苹果的政策,您的应用程序必须支持 IPV6。所以,请检查您的应用程序是否支持 IPV6。 Supporting IPv6 in iOS 9

要测试,如果您的应用程序支持 IPV6,请检查此,

Supporting IPv6 DNS64/NAT64 Networks

要检查是否创建,请按照苹果页面上的说明进行操作。

使用 Mac 设置本地 IPv6 Wi-Fi 网络


1) 确保您的 Mac 已连接到互联网(通过以太网),但不是通过 Wi-Fi

2) 从 Dock、LaunchPad 或 Apple 菜单启动系统偏好设置

3) 按Option键并单击共享。不要释放 Option 键。 (别忘了按option键)

4)在共享服务列表中选择 Internet 共享。

5) 松开 Option 键。

6) 选中创建 NAT64 网络复选框。

7) 选择提供 Internet 连接的网络接口,例如 Thunderbolt Ethernet 或 Only Ethernet

8)选中 Wi-Fi 复选框。

9)点击Wi-Fi选项,为您的网络配置网络名称安全选项。

10) 选中 Internet 共享复选框 以启用您的本地网络。

11)当提示您确认您要开始共享时,点击开始

12) 现在您的 mac mini 正在作为热点工作并使用 IPv6 NAT64 网络

(创建热点时如上图)

现在将您的 iphone 连接到您的 mac mini 的热点。并测试您的应用程序是否正常工作。

希望这个回答对你有所帮助。

编辑:- 不要忘记添加以下框架。

1) WebKit

2) CFNetwork

您将在此链接上找到与 ipv6 政策相关的所有信息。 Supporting IPv6 DNS64/NAT64 Networks

【讨论】:

  • 感谢您的回答....我们将添加您建议的框架 1) WebKit 2) CFNetwork 并将上传到 App Store。
  • 你也检查过设置热点吗??
  • 这只是一个检查您的应用程序是否在 ipv6 上正常运行的过程!
  • @Badal Shah 从我的 iOS 应用程序(设备)调用 API 到服务器。我的设备已连接到 IPv6 网络。我调用的 API 是 IPv4 网络。我使用 swift 创建了应用程序,我使用 Alamofire 调用 API 和 Reachability 来检查 Internet 连接。我该怎么办呢
  • 如果您的 Internet 连接或 ISP 不支持 IPv6,此解决方案将不起作用。
【解决方案2】:

我们也面临同样的问题。 只需使用cloudFlare 等任何 CDN 注册您的网站,您的应用将在下次获得批准,无需将整个网站转移到任何其他服务器。这是从应用商店获得批准的最简单方法。

【讨论】:

    【解决方案3】:

    我认为 Apple 对这个错误有问题!

    我有一个应用程序(离子应用程序)因相同的错误被拒绝 3 次(2016 年 11 月),最后被接受,没有进行任何与 IPv6 相关的更改!

    如果您认为自己与 IPv6 无关,则可能需要检查您的应用是否存在启动错误。

    顺便说一句:我没有检查我的应用程序的 IPv6 兼容性,甚至更多的应用程序 - 在它的内部视图中 - 连接到托管在不支持 IPv6 的共享主机上的网页!!

    【讨论】:

      【解决方案4】:

      请注意,有时移动应用程序可以在测试环境中运行,但不能在 Apple 自己的测试环境中运行。关注thisthis 链接对于确定苹果拒绝的问题非常有帮助。 明明就是测试环境不完全一样

      【讨论】:

      • 从我的 iOS 应用程序(设备)调用 API 到服务器时。我的设备已连接到 IPv6 网络。我调用的 API 是 IPv4 网络。我使用 swift 创建了应用程序,我使用 Alamofire 调用 API 和 Reachability 来检查 Internet 连接。我应该为此做些什么。我需要从应用程序端做的任何事情
      • Apple 表示要避免使用可达性进行预检。在这里developer.apple.com/library/ios/documentation/…(在没有预检的情况下连接部分)。如果您必须使用可达性检查它是否支持 IPv6 并确保使用 SCNetworkReachabilityCreateWithName
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-01-06
      • 2017-12-21
      • 1970-01-01
      • 2017-03-26
      • 1970-01-01
      • 1970-01-01
      • 2017-04-04
      相关资源
      最近更新 更多