2016-05-31 343 views
1

我正在开发一个从URL下载数据的APP。随机误差错误域= kCFErrorDomainCFNetwork代码= -1009

“错误域= kCFErrorDomainCFNetwork代码= -1009”

被示出。我知道错误意味着我丢失了Wifi连接。事实上,wifi标志从我的iPad上消失。关闭并打开WiFi后,连接返回,我可以重新开始下载数据。 我注意到,如果我在连接丢失时使用AppStore或Safari,它会自动重新连接。 现在的问题是:我应该如何处理与AppStore或Safari相同的行为,以便我可以自动重新连接?

+0

如果'error.code'是等于'kCFURLErrorNotConnectedToInternet',与可达性的帮助下,你可以根据需要重新尝试网络电话。 – Larme

+0

我试过这个,但显示的是同样的错误。我没有连接,直到您关闭/开启WIFI –

+0

看看这里,如果这不起作用,您可以设置一段超时时间以在一段时间后重试(如果您愿意,也可以选择通知用户)。我个人会尝试第一个可达性解决方案,虽然:http://stackoverflow.com/questions/30109283/notification-when-wifi-connection-available – thephatp

回答

0

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

  1. 当你得到一个错误,使用苹果的可达性的示例代码类来创建一个手表的可达性变化问题的主机的对象。将它放在某个数组的某处以便安全保存。

  2. 当可达性类通知您该主机的可达性已更改时,请再次尝试请求。

  3. 如果该请求成功,请停止监听该主机的可达性并从阵列中删除可达性对象。

欲了解更多信息,请参见:https://developer.apple.com/library/ios/samplecode/Reachability/Introduction/Intro.html