android 让webview支持https 双向认证(SSL)


1.用okhttp这个框架用https请求获取到html样式的String类型的数据okhttp 与https

2.利用webView.loadDataWithBaseURL("about:blank",jsonString, "text/html", "utf-8", null);这个方法渲染界面,并展示



程序如下

@SuppressLint({ "JavascriptInterface", "SetJavaScriptEnabled" })
@Override
public void onCreate(Bundle savedInstanceState) {
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
setContentView(R.layout.micro_share);

webView = (WebView) this.findViewById(R.id.webView);
webView.setHorizontalScrollBarEnabled(false);
WebSettings setting = webView.getSettings();


setting.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS);
// 设置支持javascript
setting.setJavaScriptEnabled(true);
// setting.setUseWideViewPort(true);
// setting.setLoadWithOverviewMode(true);
//
setting.setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);
setting.setLoadWithOverviewMode(true);


WebViewClient wvClient = new WebViewClient();
webView.setWebViewClient(wvClient);


OkHttpUtils.post().url(tizi_url).build()
.execute(new MyStringCallback());
}
public class MyStringCallback extends StringCallback {


@Override
public void onError(okhttp3.Call call, Exception e) {
// TODO Auto-generated method stub


}


@Override
public void onResponse(String response) {

     // jsonString 对应的是html样式的数据 
String jsonString = new String(response);
      if (jsonString == null || jsonString.equals("")
|| jsonString.equals("null")) {
......
} else {
                           // 这里用webview渲染web页面
webView.loadDataWithBaseURL("about:blank",jsonString, "text/html", "utf-8", null);


}


}


}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值