我有一个NSURLConnection正在进行的场景。
众所周知,CDMA手机(想想Verizon,Sprint)无法同时处理数据和电话。当有人通过电话中断连接时,有没有人知道NSError会返回什么?
是否有任何错误处理?调用didFailWithError还是自动进入后台?
提前谢谢。
答案 0 :(得分:2)
这是一个很好的问题。虽然我不知道具体的答案,但是如果你实现这个NSURLConnection函数:
- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
在使用xcode进行调试的设备上运行代码,您应该能够自己查看。
编辑:
添加到另一个答案,我找到了所有网址错误的列表,所以希望你可以缩小你正在寻找的那个。 errors
提交前编辑: 我找到了!错误是: NSURLErrorCallIsActive 强>
在不支持同时电话和数据通信(EDGE或GPRS)的网络上,当电话呼叫处于活动状态时尝试连接时返回。
答案 1 :(得分:1)
//连接:didFailWithError:错误
-(void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
{
//handle error here
if([error code] == NSURLErrorCallIsActive)//error code for NSURLErrorCallIsActive = -1019
{
//if we can identify the error
}else{
//otherwise handle the error generally
}
}