0

我使用 SAP 移动服务创建了一个混合 Web 应用程序。

.apk只有在 Android 设备上安装了特定证书时,此应用程序 ( ) 才能运行。否则,它不应该运行。

任何想法如何解决这个问题?

4

1 回答 1

0

在 MainActivity.java 添加以下代码:

boolean isCertExist = false;
        try
        {
            KeyStore ks = KeyStore.getInstance("AndroidCAStore");
            if (ks != null)
            {
                ks.load(null, null);
                Enumeration aliases = ks.aliases();
                while (aliases.hasMoreElements())
                {
                    String alias = (String) aliases.nextElement();
                    java.security.cert.X509Certificate cert = (java.security.cert.X509Certificate) ks.getCertificate(alias);

                    System.out.println(cert.getIssuerDN().getName());
                    if (cert.getIssuerDN().getName().contains("<STRING CERT>"))
                    {
                        isCertExist = true;
                        break;
                    }
                }
            }
于 2019-11-23T08:44:32.250 回答