Java 在谷歌Play商店上传应用程序时为什么要使用SslErrorHandler?

Java 在谷歌Play商店上传应用程序时为什么要使用SslErrorHandler?,java,android,google-play,android-security,sslerrorhandler,Java,Android,Google Play,Android Security,Sslerrorhandler,我已将发布版APK上传到Google Playstore,但由于SslErrorHandler,它总是被拒绝 @Override public void onReceivedSslError(WebView view, final SslErrorHandler handler, SslError error) { final AlertDialog.Builder builder = new AlertDialog.Builder(Reg

我已将发布版APK上传到Google Playstore,但由于
SslErrorHandler
,它总是被拒绝

        @Override
        public void onReceivedSslError(WebView view, final SslErrorHandler handler, SslError error) {
            final AlertDialog.Builder builder = new AlertDialog.Builder(Registration.this);
            String message = "SSL Certificate error.";

            message += " Do you want to continue anyway?";

            builder.setTitle("SSL Certificate Error");
            builder.setMessage(message);
            builder.setPositiveButton("continue", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    handler.proceed();
                }
            });
            builder.setNegativeButton("cancel", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    handler.cancel();
                }
            });
            final AlertDialog dialog = builder.create();
            dialog.show();
        }

解决方法是将handler.procedure()和handler.cancel()放入if-else中

@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
    if (error.toString().equals("SSLError")) {
        handler.cancel();
    } else {
        handler.proceed();
    }
}

祝你好运

你最好粘贴完整的错误跟踪。我不明白为什么这个问题被否决了!谷歌认为你是在欺骗用户,因为你隐藏了无效的ssl证书问题(换言之,你可以发起中间人攻击)。我想这是自动支票。只需使用有效的证书,无需OnReceivedSlerror处理程序。