基本思想是更改webview中加载的每个URL(例如添加/删除get参数)。
我有一个自定义WebViewClient
,其中我有以下方法:
public boolean shouldOverrideUrlLoading(WebView view, String url) {
String modifiedUrl = Util.someMethod(url);
super.shouldOverrideUrlLoading(view, modifiedUrl);
}
它是否有效或者我应该将此逻辑放在另一种方法中,例如onPagestarted
?
答案 0 :(得分:2)
你应该做的事情如下:
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if(conditionForModifyingUrl){
String modifiedUrl = Util.someMethod(url);
view.loadUrl(modifiedUrl);
return true;
}
return false;
}
调用super.shouldOverrideUrlLoading(view, modifiedUrl)
将不起作用,因为它的名称,此方法仅检查是否应覆盖网址,并且根本不加载网址。