Webview回退到SSLv3,因为主机是TLS不容忍的

时间:2015-08-05 07:04:18

标签: android webview sslv3

我无法使用webView在我的应用程序中登录网站(https://healthmanager.webmd.com/manager/)。错误位于

之下
external/chromium/net/http/http_stream_factory_impl_job.cc:865: [0805/114317:WARNING:http_stream_factory_impl_job.cc(865)] Falling back to SSLv3 because host is TLS intolerant:

我的网站设置在

之下
    MyPortalsWebView.getSettings().setJavaScriptEnabled(true);
    MyPortalsWebView.getSettings().setDomStorageEnabled(true);
    MyPortalsWebView.getSettings().setDefaultZoom(WebSettings.ZoomDensity.FAR);
    MyPortalsWebView.getSettings().setSupportZoom(true);
    MyPortalsWebView.getSettings().setUseWideViewPort(true);
    MyPortalsWebView.getSettings().setLoadWithOverviewMode(true);
    MyPortalsWebView.getSettings().setSupportMultipleWindows(true);
    MyPortalsWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
    MyPortalsWebView.setInitialScale(1);
    MyPortalsWebView.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NORMAL);
    MyPortalsWebView.getSettings().setBuiltInZoomControls(true);

    if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN){
        MyPortalsWebView.getSettings().setAllowUniversalAccessFromFileURLs(true);
        MyPortalsWebView.getSettings().setAllowFileAccessFromFileURLs(true);
    }

是否缺少任何设置或需要做其他事情?

1 个答案:

答案 0 :(得分:-1)

如果您只想删除ssl错误消息,请设置Web视图客户端并覆盖onReceivedSslError()方法。

    MyPortalsWebView.setWebViewClient(new WebViewClient() {

            @Override
            public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error){
                handler.proceed();
            }
    });