基本思想是更改正在Web视图中加载的每个url(例如,添加/删除get参数)。
我有一个自定义WebViewClient
,其中有以下方法:
public boolean shouldOverrideUrlLoading(WebView view, String url) {
String modifiedUrl = Util.someMethod(url);
super.shouldOverrideUrlLoading(view, modifiedUrl);
}
它会起作用还是应该将这种逻辑放入其他方法中,例如
onPagestarted
? 最佳答案
您宁愿执行以下操作:
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)
将不起作用,因为按其名称,此方法仅检查是否应覆盖url,而根本不加载该url。