我在 iPhone4 上使用 iOS4.1。我还使用最新版本的可达性代码。我的设备没有连接,但代码似乎等待超时,否则设备需要很长时间才能报告可达性状态。
在使用 iPhone 3gs 的 iOS 4.0.1 上似乎不会发生这种情况。
还有其他人遇到过这个吗?除了启动新线程之外,还有什么方法可以解决这个问题吗?
您确定您正在异步使用它吗?
来自 Apple 关于 Reachability 项目的文档 ReadMe.txt:
Reachability 示例演示了
的异步使用
SCNetworkReachability API。您可以使用
同步API,但不
按主机名发出同步检查
在主线程上。如果设备
无法到达 DNS 服务器或位于
网络速度慢,同步调用
SCNetworkReachabilityGetFlags
函数最多可阻塞 30 个
尝试解决问题的秒数
主机名。如果这种情况发生在主
线程,应用程序看门狗将
20秒后杀死应用程序
不活动。
所以,我认为你是对的 - 启动一个后台线程来处理它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)