【问题标题】:initializing NSXMLParser from URL without internet connection在没有互联网连接的情况下从 URL 初始化 NSXMLParser
【发布时间】:2011-01-10 04:07:19
【问题描述】:

我正在尝试通过测试解析器在使用此语句初始化后是否返回 nil 来检查互联网连接 - NSXMLParser *xml = [[NSXMLParser alloc] initWithContentsOfURL:url]

但是,当我在飞行模式下调试 iphone 时,xml 已初始化,我的程序稍后会崩溃。如果无法获取url的内容,xml不应该是nil吗?

【问题讨论】:

    标签: iphone nsxmlparser


    【解决方案1】:

    为了检测网络状态,你应该使用更直接的方法来获得更好的结果:有一个 reachability 类 - 需要一些更新才能向后兼容固件 3.x,但在这里你去 - 有人已经这样做了......

    http://blog.ddg.com/?p=24

    Is Apple's current Reachability class backwards-compatible with iOS 3.1?

    使用 URL,您可能永远无法确定网络是否以这种方式运行、缓存、不同的网络设置等等......

    可达性类是要走的路,正确处理边缘/wifi/飞行模式。

    【讨论】:

    • 谢谢,我读过关于可达性的文章,但认为它可能会增加更多的开销,而不仅仅是测试解析器是否正确返回。我会试一试的。
    猜你喜欢
    • 2015-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-09
    相关资源
    最近更新 更多