今天有个商户在测试环境遇到WebView控件无法加载银联wap的问题。具体他们怎么设置的就不清楚了,说了半天没说通,干脆自己写了个demo丢给他。
WebView加载银联wap只需要注意两个问题:
1.开启WebView控件的JS功能。
2.因为测试环境下的https证书是不受任信的,所以需要做证书信任处理。
核心代码如下:
WebViewClient client = new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); // 在当前的webview中跳转到新的url return true; } public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) { // handler.cancel(); // Android默认的处理方式 handler.proceed(); // 接受所有网站的证书 // handleMessage(Message msg); // 进行其他处理 } }; webView.setWebViewClient(client); WebSettings settings = webView.getSettings(); settings.setJavaScriptEnabled(true); // 开启js settings.setCacheMode(WebSettings.LOAD_NO_CACHE); // 禁止缓存
源代码:点击下载
发表回复