首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >处理网络异常

处理网络异常
EN

Stack Overflow用户
提问于 2013-09-18 09:06:12
回答 3查看 1.1K关注 0票数 0

我是目标c的新手,我正在为安卓和iPhone做同样的应用程序。

在Java中,我使用一个try-catch块来捕获网络异常并处理它。

在目标C中,我使用的是:

代码语言:javascript
复制
[[NSXMLParser alloc] initWithContentsOfURL:url]

所以,在解析输入流时,我如何处理网络异常,所以如果网络崩溃或出现任何问题,我可以通知用户并使我的应用程序正常工作?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-09-18 09:12:27

如果您使用的是NSXMLParser,那么使用它的delgate方法。

代码语言:javascript
复制
- (void)parser:(NSXMLParser *)parser parseErrorOccurred:(NSError *)parseError
{
NSLog(@"Error = %@", parseError);
}
票数 1
EN

Stack Overflow用户

发布于 2013-09-18 09:12:48

使用initWithContentsOfURL:方法从来都不是一个好主意。

您最好通过NSURLConnection或像AFNetworking这样的库检索数据。这将允许您处理HTTP状态代码和网络错误。

例如,NSURLConnectionDelegate有一个回调方法– connection:didFailWithError:,它将在发生错误时被调用。然后,您可以检查错误对象,看看出了什么问题。

票数 1
EN

Stack Overflow用户

发布于 2013-09-18 09:28:09

在调用URL之前,您可以检查internet的连接性。

我建议你看看下面的链接How to check for an active Internet connection on iOS or OSX?

我建议解析XML文件时使用raptureXML,这非常简单。https://github.com/ZaBlanc/RaptureXML

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18868031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档