【发布时间】:2012-08-11 01:17:33
【问题描述】:
几周前通读了 Apple 指南,它说应用应在尝试建立连接之前检查可达性状态,我读到应用商店因不这样做而被拒绝。
但是,可达性 API 最多可能需要 30 秒(根据 Apple 文档,而且我自己有时也看到过这种情况)来确定可达性是否可用。在这种情况下,API 返回不可访问。
因此,您可能会遇到以下情况:您确实具有可达性,但 API 说您没有,并且您在 30 秒左右不会发现您这样做。
必须等待 30 秒的时间太长了,尤其是在用户已启动连接的情况下。考虑这种情况:
- 用户单击某些按钮执行某些与 Internet 相关的活动
- 根据 Apple 指南,代码使用可达性 API 在尝试建立连接之前检查是否存在可达性。
- Reachability API 表示不存在可达性(但实际上存在),因此代码告诉用户不存在连通性(在此过程中让他们感到困惑)
- 30 秒后,可达性 API 通知代码现在可达性
- 但为时已晚,因为用户已经受够了等待,因此退出了应用程序并转到了其他地方。
按照 Apple 的指南首先检查可访问性,很有可能会导致绝对糟糕的用户体验,并且应用在本可以完成时没有联系服务器。
这看起来很荒谬,我肯定错过了什么吗?
如何在提供响应式应用的同时遵循 Apple 的指导方针?
我在 Reacability API 中遇到了这些延迟并想放弃它 - 因为我见过它说没有可达性但如果你尝试有的情况,因此我希望我的应用程序尝试连接不管 API 说什么。但是如果我这样做了,那么应用程序有可能被拒绝吗?
有解决这个困境的办法吗?
【问题讨论】:
标签: ios