UIWebView - 抛出了啥 NSError?
Posted
技术标签:
【中文标题】UIWebView - 抛出了啥 NSError?【英文标题】:UIWebView - what NSError's are thrown?UIWebView - 抛出了什么 NSError? 【发布时间】:2014-06-28 22:16:15 【问题描述】:当 UIWebView 因为无法访问服务器而无法加载页面时,我试图向用户发出警报。我正在使用委托方法:
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
// show NSAlert telling user there was a problem
(文档:https://developer.apple.com/library/ios/documentation/uikit/reference/UIWebViewDelegate_Protocol/Reference/Reference.html#//apple_ref/occ/intfm/UIWebViewDelegate/webView:didFailLoadWithError:)
问题是这个方法也会被调用来处理其他事情——比如当你在前一个页面完成加载之前访问另一个页面时,等等。我应该检查哪些特定的 NSError 来抛出我的 NSAlert? UIWebView 会抛出什么 NSError?我在任何地方都看不到这个记录!
谢谢。
【问题讨论】:
尝试模拟失败的加载并找出抛出的错误代码。然后,一旦得到错误代码,只需检查 NSError 对象代码是否与您计算出的相同。 @Noam Solovechick 谢谢,这实际上是个好主意——我想太多像 Java 异常了。我试试看。 @NoamSolovechick 一旦我得到错误代码,有没有什么地方可以找到这个错误的真实描述? 【参考方案1】:如果有人遇到同样的问题,解决方案最终是: NSLog 每次调用错误函数时的错误代码和描述。 在我的应用程序中做一些会产生错误的事情 观察输出以确定哪些代码对应于哪些操作(错误描述有帮助)。
这可以通过以下方式实现:
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
NSLog(@"%d", error.code);
NSLog(error.localizedDescription);
【讨论】:
以上是关于UIWebView - 抛出了啥 NSError?的主要内容,如果未能解决你的问题,请参考以下文章
从 Core Data 打印 NSError 的 userInfo 会抛出 EXC_BAD_ALLOC
为啥 SKProductsRequestDelegate/SKRequestDelegate didFailWithError 在 NSError 上抛出 EXC_BAD_ACCESS?