問題:第三方重定向鏈接在APP內部無法返回退出
通過網上收集驗證:這些方式都是有缺陷的
1、WebView.HitTestResult爲空方式
2、自定義ArrayList收集加載url
解決方案:
注意:shouldOverrideUrlLoading攔截中不僅僅返回false,中間自生不能view.loadUrl加載,全部交給系統處理
1、導致系統重定向失誤寫法
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
2、正確寫法
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
//view.loadUrl(url); //禁止放開此段代碼註釋,否則導致重定向失效
//轉發交給webview自己處理
return false;
}
});
萬萬沒有想到解決重定向問題,就在shouldOverrideUrlLoading中處理,我們更加深刻解析此方法的返回值用法。
參考網站: