巴扎黑2017-04-17 18:02:58
感謝個各位的解答,目前已經解決了,不過還是沒有明白原理,希望有朋友能解釋下原因。
之前設定了這個方法,顯示是過時的,且無法正確載入淘寶天貓等一些購物網站:
webView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
後面換成了重載的另一個方法就ok了,不過還是希望有朋友能解釋下為什麼?
@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
view.loadUrl(request.toString());
return true;
}
也可以直接複寫下面方法
@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
handler.proceed();
}
找了篇文章WebView詳解
天蓬老师2017-04-17 18:02:58
這個tamll是喚醒手機天貓APP的,因為預設webview是不支援喚醒任何app的,所以就會出錯。
如果想子啊當前頁面打開天貓或淘寶
,你需要把他的鏈接重新解析,可以看到實際產品的url是問號後面的“url?= ” 可以吧url的值解析在調用webview打開,這個和喚醒一樣都是一處修改的,都是在shouldOverrideUrlLoading,這裡加載url判斷是不是tmall開頭,如果是你就解析如果不是就判斷是不是http或者https開頭,然後加載
可以看看這篇文章,之間做過喚醒不過找不到程式碼了。
http://www.jianshu.com/p/fd04...
PHP中文网2017-04-17 18:02:58
tmall:// 這個是天貓app專用的跳轉schema協議,你在webview裡肯定是打不開的。
如果你手機裝了天貓app客戶端,則可以自動喚起app打開該頁面