android 安装p12证书,怎么使用P12证书的Android「建议收藏」

android 安装p12证书,怎么使用P12证书的Android「建议收藏」当点击Wi-FiSettings,Advanced界面的“安装证书”;或者在Settings的Security界面下的CredentialStorage界面点击“安装证书”。com.android.certinstaller包中的CertInstallerMain类会收到Settings发送的Credentials.INSTALL_AS_USER_ACTIONintent。然后,CertIn…

大家好,又见面了,我是你们的朋友全栈君。

当点击Wi-Fi Settings, Advanced界面的“安装证书”;或者在Settings的Security界面下的CredentialStorage界面点击“安装证书”。com.android.certinstaller包中的CertInstallerMain类会收到Settings发送的Credentials.INSTALL_AS_USER_ACTION intent。

然后,CertInstallerMain类开始创建一个线程,并开始run。在run中,因为收到了Credentials.INSTALL_AS_USER_ACTION intent, CertInstallerMain开始判断SD卡是否存在,这里,我们将证书都push到SD卡里了,SD卡当然是存在的。这种情况下,CertInstallerMain类通过其继承的CertFile类开始读取卡里的所有证书文件。CertFile类读取证书的过程很简单:它把自己设置成了一个FileFilter,在accept方法中,CertFile只接收后缀为Credentials.EXTENSION_CRT, Credentials.EXTENSION_P12, Credentials.EXTENSION_CER, Credentials.EXTENSION_PFX的文件。也就是说当前,Android只支持后缀为crt, p12,cer和pfx的数字证书。

接着,当SD卡里只有一个证书的时候它弹出一个安装提示框,当SD卡里有一堆证书的时候,它会弹出一个证书列表,这个列表由CertFileList类维护,放点击某个证书的时候,会和当SD卡里只有一个证书的时候一样,调用installFromFile方法,弹出一个对话框。CertFile类的install方法会通知CertInstaller来负责证书的安装。

CertFile类对p12证书和其它证书进行了分类,要是p12证书,我给个对话框,输入完密码就OK了。我这里,还使用了WIFI WAP需要的CA证书进行测试。对于CA证书,当点击弹出对话框的“确认”对应的按钮后,它会通过CredentialHelper类建立一个com.android.credentials.INSTALL intent发给com.android.settings.CredentialStorage类。当CertInstaller类启动后它会直接创建一个CredentialHelper类,CredentialHelper类就直接将安装的证书分类成CA和USER,所以当点击“确认”后,CredentialHelper会将CA证书的信息通过Credentials.EXTRA_CA_CERTIFICATES_NAME和Credentials.EXTRA_CA_CERTIFICATES_DATA放到com.android.credentials.INSTALL的intent中。

最后,Settings收到了这个intent,通过installIfAvailable()方法,将CA证书的信息保存到了KeyStore中。然后,Settings可以通过KeyStore来读取保存的证书。

取消

评论

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/147870.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Django(67)drf搜索过滤和排序过滤

    Django(67)drf搜索过滤和排序过滤前言当我们需要对后台的数据进行过滤的时候,drf有两种,搜索过滤和排序过滤。搜索过滤:比如我们想返回sex=1的,那么我们就可以从所有数据中进行筛选排序过滤:比如我们想对价格进行升序排列,就可以

    2022年7月30日
    8
  • qq刷屏代码可复制_QQ小程序「神奇字体」从注册到发布

    qq刷屏代码可复制_QQ小程序「神奇字体」从注册到发布QQ小程序最开始是邀请制的,在上个月差不多快中旬的时候对开发者全面开放了,把之前的微信小程序「神奇字体」搬了过去,关于微信小程序详见小程序神奇字体的从零到一。这里分享下QQ小程序从零到一的搬移过程。认证首先是去注册QQ小程序,进行认证开发者,然后才能发布小程序,大概认证了快一周左右吧。开发工具和微信小程序一样,先下了客户端。再看下微信小程序的开发界面。有没有发现不同之处。本来下完QQ…

    2022年6月10日
    181
  • 企业linux应用ssh免密码登陆上机实战考试题

    企业linux应用ssh免密码登陆上机实战考试题

    2021年8月11日
    58
  • silverlight 跳转指定的aspx页面

    silverlight 跳转指定的aspx页面

    2021年8月29日
    55
  • Hibernate二级缓存以及ehcache的搭建配置「建议收藏」

    Hibernate二级缓存以及ehcache的搭建配置「建议收藏」Session级别的以及缓存总是有效的,当应用保持持久化实体、修改持久化实体时,Session并不会吧这种改变flush到数据库,而是缓存在当前Session的一级缓存中,除非程序显示调用session的flush方法,或者查询关闭session时,才会把这先改变一次性的flush到底层数据库,这样可以减少与数据库的交互,从而提高数据库的访问性能。SessionFactory级别的二级缓存是全局的,应用的所有的Seeion都共享这个二级缓存,当Session需要抓取数据时,Session就会优

    2022年5月10日
    38
  • spdLog的使用

    spdLog的使用以下为收集到或者个人测试的内容,侵权删一.优点非常快使用自带的例子测试写log,利用次数/时钟周期衡量结果*******************************************************************************Singlethread,1,000,000iteration

    2022年6月23日
    72

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号