Android中可以用WebView来访问http和https的网站,但是默认访问https网站时,假如证书不被Android承认,会出现空白页面,且不会有任何提示信息,这时我们必须加多一些配置。
此方法只针对2.1版本以上的Android。
1 package me.gevin;
2
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;
8
9 public class TestActivity extends Activity {
10
11WebView wvTest = null;
12
13@Override
14protected void onCreate(Bundle savedInstanceState) {
15super.onCreate(savedInstanceState);
16setContentView(R.layout.wvTest);
17
18wvTest = (WebView) this.findViewById(R.id.wvTest);
19wvTest.setWebViewClient(new WebViewClient() {
20public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error){
21//handler.cancel(); // Android默认的处理方式
22handler.proceed();// 接受所有网站的证书
23//handleMessage(Message msg); // 进行其他处理
24}
25});
26wvTest.getSettings().setJavaScriptEnabled(true);
27wvTest.getSettings().setDefaultTextEncodingName("gb2312");
28wvTest.loadUrl("https://login.taobao.com/");
29
30}
31
作者:caikezhan