原因:在WebViewClient的回調方法onReceivedSslError裏只單純的寫了handler.proceed();沒給出明確的原因
兩種解決方法:
1、去掉WebViewClient的回調方法onReceivedSslError
2、修改onReceivedSslError如下所示
@Override
public void onReceivedSslError(WebView view, final SslErrorHandler handler, SslError error) {
AlertDialog.Builder builder = new AlertDialog.Builder(view.getContext());
builder.setMessage("SSL認證失敗,是否繼續訪問?");
builder.setPositiveButton("確定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
handler.proceed();
}
});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
handler.cancel();
}
});
AlertDialog dialog = builder.create();
dialog.show();
}