1

我正在开发应用程序,该应用程序将通过在应用程序中提供用户的登录页面(具有登录选项)将用户与可用的开放 WIFI 连接起来。谷歌显示在 WebView 中使用 onReceivedSslError() 来在应用程序中加载 Wifi 的登录页面的警报。

如果我删除此方法,则链接将不起作用。为了使其正常工作,我需要在network_security_config.xml文件中添加域名,但我不知道 wifi 的供应商会显示哪个链接,因为它不在我的控制范围内。这坚持我在 Webview 中使用 onReceivedSslError() 方法。我在 onReceivedSslError() 中显示警报对话框,询问用户是否要继续。

 AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setMessage("SSL Certificate Verification!\nPlease click on CONTINUE to open login 
page of selected Wifi");
        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();
                finish();
            }
        });
        final AlertDialog dialog = builder.create();
        dialog.show();` 

进入 onReceivedSslError() 时出错

error.getPrimaryError() : 3 SSL_UNTRUSTED

我也试过这个https://www.rgagnon.com/javadetails/java-fix-certificate-problem-in-HTTPS.html但还是不行。

任何可用的链接都不能解决我的问题。请指导我。提前致谢

4

0 回答 0