【发布时间】:2014-11-07 06:37:16
【问题描述】:
当我尝试在 WebView 中加载 URL 时:
private final WebViewClient webViewClient = new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
loadUrl(url);
return true;
}
};
webView.setWebViewClient(webViewClient);
webView.loadUrl("https://post.craigslist.org/");
我在页面上得到了这个 html:
错误请求
您的浏览器发送了此服务器无法理解的请求。
onReceivedError(WebView view, int errorCode, String description, String failingUrl) 回调中也没有任何内容。
【问题讨论】:
-
你能告诉我你正在测试它的android API版本吗?
-
@Deminem
API-19,清单设置为android:targetSdkVersion="18"。但我检查了WebView migration for 4.4,这些更改似乎都没有影响我的代码。 -
我只是想检查它是否是早期的 android API 版本。因为如果 URL 源是(Android 版本 shouldOverrideUrlLoading。根据您给定的设置,我刚刚进行了测试,它运行良好,没有任何问题。顺便说一句,你为什么要两次加载 url?你不需要在
shouldOverrideUrlLoading方法中加载 url,直到你对 URL 过滤做一些特定的事情。 -
@Archie.bpgc- 测试在 4.4.2 和 4.4.4 上都可以正常工作,没有任何问题。但是,网页本身包含一些错误。
[INFO:CONSOLE(8)] "Uncaught TypeError: Cannot read property 'getItem' of null", source: https://www.craigslist.org/js/general-concat.min.js?v=c7551eda9664705c434eac8c09bcd83a (8)