当前位置: 移动技术网 > IT编程>移动开发>Android > Android中访问证书有问题的SSL网页的方法

Android中访问证书有问题的SSL网页的方法

2019年07月24日  | 移动技术网IT编程  | 我要评论

黄网址导航大全,邻座的怪同学漫画,官声小说

pc上的浏览器会弹出证书错误的对话框,提示你是否要无视错误继续浏览。实际上在webview里也可以这样做,以实现加载证书有问题的页面。

复制代码 代码如下:

webview webview = (webview) findviewbyid(r.id.webview);
webview.setwebviewclient(new webviewclient() {
    @override
    public void onreceivedsslerror(webview view, sslerrorhandler handler, sslerror error) {

        // *** never do this!!! ***
        // super.onreceivedsslerror(view, handler, error);

        // let's ignore ssl error
        handler.proceed();
    }
}

只需像这样重载webviewclient的onreceivedsslerror()函数并在其中执行handler.proceed(),即可忽略ssl证书错误,继续加载页面。

这里要注意的是,千万不要调用super.onreceivedsslerror()。这是因为webviewclient的onreceivedsslerror()函数中包含了一条handler.cancel()(见源码,其含义是停止加载,所以如果调用了super.onreceivedsslerror(),其结果就是第一次访问时无法加载,第二次以后可以加载(不知道为什么),而且还可能发生libc的段错误:

复制代码 代码如下:

a/libc: fatal signal 11 (sigsegv) at 0x00000010 (code=1)

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网