错误域=kCFErrorDomainCFNetwork 代码=-1009

Error Domain=kCFErrorDomainCFNetwork Code=-1009

我正在开发一个从 URL 下载数据的应用程序。随机错误

"Error Domain=kCFErrorDomainCFNetwork Code=-1009"

已显示。我知道这个错误意味着我失去了 Wifi 连接。事实上,wifi 徽标从我的 Ipad 中消失了。关闭并打开 WiFi 后,连接恢复,我可以重新开始下载数据。 我注意到如果我在连接丢失时使用 AppStore 或 Safari,它会自动重新连接。 问题是:我应该如何处理我的应用程序以获得与 AppStore 或 Safari 相同的行为,以便我可以自动重新连接?

它不是自动的。在高层次上,你这样做的方式是:

  1. 当您遇到错误时,使用 Apple 的可达性示例代码 class 创建一个对象来监视相关主机的可达性变化。把它放在一个数组中的某个地方以便安全保存。

  2. 当可达性 class 通知您该主机的可达性已更改时,请重试该请求。

  3. 如果该请求成功,则停止侦听该主机的可达性并从数组中删除可达性对象。

有关详细信息,请参阅:https://developer.apple.com/library/ios/samplecode/Reachability/Introduction/Intro.html