WebView巢狀的網頁需要開啟外在應用
阿新 • • 發佈:2018-12-19
WebView巢狀的連結開啟,微信,支付寶,QQ支付
在定義的WebViewClient中新增重寫方法,如下:
public class WebViewEmptyViewClient extends WebViewClient { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { try { if (url.startsWith("weixin://") //微信 || url.startsWith("alipays://") //支付寶 || url.startsWith("mqqwpa://"))/*QQ支付*/ { Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); mContext.startActivity(intent); return false; } } catch (Exception e) { //防止crash (如果手機上沒有安裝處理某個scheme開頭的url的APP, 會導致crash) return false;//沒有安裝該app時,返回true,表示攔截自定義連結,但不跳轉,避免彈出上面的錯誤頁面 } return false; } }
WebView直接引用:
mWebView.setWebViewClient(new WebViewEmptyViewClient(this));