【发布时间】:2013-01-31 02:38:04
【问题描述】:
当应用程序启动时,我正在我的应用程序中安装证书。我浏览了以下几个链接并成功安装了证书。
http://nelenkov.blogspot.in/2011/12/ics-trust-store-implementation.html
How to programmatically install a CA Certificate (for EAP WiFi configuration) in Android?
how to install CA certificate programmatically on Android without user interaction
我知道我们无法在没有用户交互的情况下静默安装证书。目前我不知道每次用户打开我的应用时如何停止提示。
每当我的应用程序当前每次要求用户安装证书时启动。有什么方法可以检测证书(在这种情况下是我的证书)是否已经安装,以编程方式。
代码 sn-p 我在我的应用中安装证书的地方
private void installCertificate()
{
try
{
BufferedInputStream bis = new BufferedInputStream(getAssets().open(MY_CERT));
byte[] keychain = new byte[bis.available()];
bis.read(keychain);
Intent installIntent = KeyChain.createInstallIntent();
X509Certificate x509 = X509Certificate.getInstance(keychain);
installIntent.putExtra(KeyChain.EXTRA_CERTIFICATE, x509.getEncoded());
installIntent.putExtra(KeyChain.EXTRA_NAME, MY_CERT);
startActivityForResult(installIntent, INSTALL_KEYCHAIN_CODE);
}
catch (IOException e) {
e.printStackTrace();
}
catch (CertificateException e)
{
e.printStackTrace();
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
if (requestCode == INSTALL_KEYCHAIN_CODE)
{
switch (resultCode)
{
case Activity.RESULT_OK:
doTheTask();
break;
case Activity.RESULT_CANCELED:
finish();
break;
default:
super.onActivityResult(requestCode, resultCode, data);
}
}
}
另外仅供参考,installCertificate() 是从 onCreate() 调用的。
请帮助我。任何帮助将不胜感激。
查询: 当提示输入证书名称时,输入的文本将作为选中状态出现,并且在方向更改时出现剪切/复制选项。任何人都知道如何在提示出现时停止文本选择?!!!
【问题讨论】:
标签: android certificate