1
在我的應用程序有表示Web網頁一個UIWebView。它有時會在UIAlertView中顯示真正煩人的錯誤。我想攔截這個並以更復雜的方式顯示錯誤。的iOS 7的UIWebView攔截警報
有沒有一種方法,我可以在一個函數截取錯誤信息,併爲自己決定什麼,我想用它做什麼?
在此先感謝!
在我的應用程序有表示Web網頁一個UIWebView。它有時會在UIAlertView中顯示真正煩人的錯誤。我想攔截這個並以更復雜的方式顯示錯誤。的iOS 7的UIWebView攔截警報
有沒有一種方法,我可以在一個函數截取錯誤信息,併爲自己決定什麼,我想用它做什麼?
在此先感謝!
這似乎做到這一點:
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
JSContext *ctx = [webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"];
ctx[@"window"][@"alert"] = ^(JSValue *message) {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"JavaScript Alert" message:[message toString] delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
};
}
注:僅在iOS上測試了8
如果是從'UIWebView'應該打'webView的錯誤:didFailLoadWithError:'前手。你可能可以在這裏做點什麼。 – Popeye
的網頁加載完美,它只是顯示在alertview錯誤。我客串它只是使用JavaScript警報功能。 –
你將不得不提供更多信息。你剛剛添加的東西不夠用。是錯誤的JavaScript相關或是你的網站實際返回和錯誤和系統顯示它。 – Popeye