Jas*_*son 7 android x509certificate android-wifi
我的目标:在Android programmitcally中创建一个EAP WiFi配置 - 包括CA证书.
问题:如何以编程方式安装CA证书(然后在EAP WiFi配置中引用该证书)?
我发现了一个非常有用的链接,允许我在这里创建和保存EAP WiFi配置: 如何在Android中以编程方式创建和读取WEP/EAP WiFi配置?
但是,假设您已在设备上安装了CA证书.我想在我的应用程序中安装证书 - 从应用程序中的资源,或从服务器发送.
这甚至可能吗?(在这种情况下,生根不是一种选择.)如果是这样,怎么样?
附加信息...
我还找到了一种向KeyStore添加证书的方法:https: //stackoverflow.com/a/4490543/1172101
但是,这专门用于创建安全套接字并通过HTTPS连接.我想使用WiFi证书.
不幸的是,我还没有找到一种以编程方式安装CA证书的方法 - 从应用程序中.
但是,可以通过Android中的Web浏览器安装证书.因此,解决方案(目前)是:启动一个意图,在Web浏览器中打开一个直接转到CA证书的URL.
这有效但有一些挑战:
这导致了一些问题:
如果您需要任何澄清,请告诉我.
您无法直接安装它,因为非系统应用程序无权访问密钥存储区.在ICS上,有一个API KeyChain.createInstallIntent()可以启动系统对话框,询问用户是否要安装证书.在ICS之前,您可以通过直接使用组件名称启动安装意图来实现相同的目的(这可能会也可能不适用于所有设备).浏览浏览器实际上是一种做同样事情的迂回方式.
至于你的问题:
startActivityForResult().更新:Android 4.3具有WifiEnterpriseConfig,它既可以创建配置文件,也可以在系统凭据存储中安装密钥和证书.您只需要CHANGE_WIFI_STATE许可.
| 归档时间: |
|
| 查看次数: |
6340 次 |
| 最近记录: |