【问题标题】:Different NSError localizedDescription between iOS 7 and 8iOS 7 和 8 之间不同的 NSError 本地化描述
【发布时间】:2014-11-04 17:16:20
【问题描述】:

我正在测试我的应用在未连接到互联网时如何显示错误,我注意到 iOS 7 和 8 针对 NSURLErrorNotConnectedToInternet (-1009) 返回不同的错误消息

iOS 7 错误

Error Domain=NSURLErrorDomain
Code=-1009 "The Internet connection appears to be offline."
UserInfo=0x17d5edc0 {NSLocalizedDescription=The Internet connection appears to be offline., 
                     NSUnderlyingError=0x17ecdd20 "The Internet connection appears to be offline."}

iOS 8 错误

Error Domain=NSURLErrorDomain
Code=-1009 "The operation couldn’t be completed. (NSURLErrorDomain error -1009.)"
UserInfo=0x1740f9c80 {_kCFStreamErrorDomainKey=12,
                      _kCFStreamErrorCodeKey=8,
                      NSUnderlyingError=0x17405dd90 "The operation couldn’t be completed. (kCFErrorDomainCFNetwork error -1009.)"}

有什么方法可以让 iOS 在 iOS 7 和 8 上生成相同的错误消息?

【问题讨论】:

    标签: ios ios7 ios8 nserror


    【解决方案1】:

    使用代码,是一样的。

    如果他们选择在 iOS8 中更新错误信息,你将无能为力。

    【讨论】:

    • 当。我希望我不必创建自己的从错误代码到字符串的映射。
    【解决方案2】:

    也许意图是这是一个错误,您不应该只显示带有技术原因的错误消息,而是应该考虑它对用户的意义。互联网连接可能因 WiFi 关闭或 3G 数据关闭而关闭,因此您可以根据数据的重要性要求将其打开。如果你正在做一些后台更新,你可能什么都不做。或者,如果有意义,您可能会建议用户稍后进行操作。

    【讨论】:

    • 也许,但它似乎需要做很多额外的工作,尤其是为了支持更晦涩的错误。至少可以选择显示更有意义的内置消息。
    【解决方案3】:

    您可以使用来自http://nshipster.com/nserror/的错误代码映射

    【讨论】:

      猜你喜欢
      • 2014-04-15
      • 2014-03-11
      • 1970-01-01
      • 2018-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多