В прошлом месяце я выпустил рабочее приложение для Android, но у меня возникли проблемы с обработчиком ошибок SSL.
Я следил за учебными пособиями Stackoverfollow и Google, однако Google по-прежнему не одобряет мое приложение (примечание: этот QA не является дубликатом).
Мой код реализован следующим образом:
Любой фрагмент или действие, использующее WebViewClient, я контролировал ошибку SSL, подобную этой
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
LogI("onReceivedSslError: " + error.getCertificate());
AlertDialog.Builder builder = new AlertDialog.Builder(ctx);
AlertDialog alertDialog = builder.create();
String message;
switch (error.getPrimaryError()) {
case SslError.SSL_UNTRUSTED:
message = "The certificate authority is not trusted.";
break;
case SslError.SSL_EXPIRED:
message = "The certificate has expired.";
break;
case SslError.SSL_IDMISMATCH:
message = "The certificate Hostname mismatch.";
break;
case SslError.SSL_NOTYETVALID:
message = "The certificate is not yet valid.";
break;
case SslError.SSL_DATE_INVALID:
message = "The date of the certificate is invalid.";
break;
default:
message = "A generic error occurred.";
break;
}
message += " Do you want to continue anyway?";
alertDialog.setTitle("SSL Certificate Error");
alertDialog.setMessage(message);
alertDialog.setButton(DialogInterface.BUTTON_POSITIVE, "OK", (dialog, which) -> handler.proceed());
alertDialog.setButton(DialogInterface.BUTTON_NEGATIVE, "Cancel", (dialog, which) -> handler.cancel());
alertDialog.show();
}
Итак, почему мое приложение не одобрено? Что я должен делать дальше?
Спасибо за ваш совет!
Обновление 1: я выпустил свое приложение в 2019 году и много раз обновлял его (проблем не было). Но с 2021/5 у меня возникла эта проблема.