Android 以编程方式安装自签名证书
我正在启动KeyChain意图,以便在内存中安装一个自签名证书,作为X509Certificate对象(由X509TrustManager通过checkServerTrusted方法获得)。 使用此代码:Android 以编程方式安装自签名证书,android,ssl,https,certificate,x509certificate,Android,Ssl,Https,Certificate,X509certificate,我正在启动KeyChain意图,以便在内存中安装一个自签名证书,作为X509Certificate对象(由X509TrustManager通过checkServerTrusted方法获得)。 使用此代码: Intent intent = KeyChain.createInstallIntent(); intent.putExtra(KeyChain.EXTRA_CERTIFICATE, certs[0].getEncoded()); intent.putExtra(KeyChain.EXTRA_
Intent intent = KeyChain.createInstallIntent();
intent.putExtra(KeyChain.EXTRA_CERTIFICATE, certs[0].getEncoded());
intent.putExtra(KeyChain.EXTRA_NAME, "certificate");
context.startActivityForResult(intent, 0);
启动了新活动,我可以收到消息“certificate is installed”,但我无法通过安全证书列表找到它,并且在尝试连接到该主机时,它似乎没有安装
你知道怎么解决吗 您提到的安全证书列表屏幕仅包含已添加到Android设备的可信CA证书列表。(注意:系统证书列表是设备制造商设置的受信任CA列表)。没有屏幕(至少在非根手机上)显示密钥链的证书 为了让应用程序访问证书/密钥,它需要向操作系统请求权限。为此,KeyChain类有一个名为choosePrivateKeyAlias的方法,该方法向用户显示一个活动,以选择应用程序可以访问的证书。此活动应列出使用上述方法安装的所有导入的证书 有关更多详细信息,请参阅下面的链接
您是否找到了这个问题的答案?