Android如何使用WebView訪問https的網站

Android中可以用WebView來訪問http和https的網站,但是默認訪問https網站時,假如證書不被Android承認,會出現空白頁面,且不會有任何提示信息,這時我們必須加多一些配置。

此方法只針對2.1版本以上的Android。

1 package me.gevin;

3 import android.net.http.SslError;
4 import android.os.Bundle;
5 import android.webkit.SslErrorHandler;
6 import android.webkit.WebView;
7 import android.webkit.WebViewClient;

9 public class TestActivity extends Activity {
10 
11     WebView wvTest = null;
12 
13     @Override
14     protected void onCreate(Bundle savedInstanceState) {
15         super.onCreate(savedInstanceState);
16         setContentView(R.layout.wvTest);
17 
18         wvTest = (WebView) this.findViewById(R.id.wvTest);
19         wvTest.setWebViewClient(new WebViewClient() {
20             public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error){
21                 //handler.cancel(); // Android默認的處理方式
22                 handler.proceed();  // 接受所有網站的證書
23                 //handleMessage(Message msg); // 進行其他處理
24             }
25         });
26         wvTest.getSettings().setJavaScriptEnabled(true);
27         wvTest.getSettings().setDefaultTextEncodingName("gb2312");
28         wvTest.loadUrl("https://login.taobao.com/");
29 
30     }
31 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章