在我的应用程序中,我从 web 服务中接收到 URL 字符串,并将其加载到 WebView 中。
mainContentText = (WebView) findViewById(R.id.mainContentText);
mainContentText.getSettings().setJavaScriptEnabled(true);
mainContentText.setWebViewClient(new CustomWebClient());
mainContentText.loadUrl(url);
private class CustomWebClient extends WebViewClient{
private static final String TAG = "WebWiewActivity";
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
Log.d(TAG, "loading: " + url);
return false;
}
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
super.onReceivedError(view, errorCode, description, failingUrl);
Log.e(TAG, String.format("*ERROR* Code: %d Desc: %s URL: %s", errorCode, description, failingUrl));
}
}
在测试URL不正确的情况下(例如随机字符串,url = "abc"
),我只收到默认错误页面,但是没有在onReceivedError
和shouldOverrideUrlLoading
回调函数中得到任何信息或异常。如何捕获这种情况?