- 没有得到安卓认可的证书颁发机构颁发的证书.
- 自己颁发的证书, 分临时性的(在开发阶段使用)或在发布的产品中永久性使用的两种.
而只有Android系统认可的机构办法的证书,在使用过程中才不会出现安全提示。
为什么会有人使用自签名的证书呢?
(重要的事重复三遍)免费,免费,免费,不用花费一分钱,在开发阶段写的代码, 测试跟发布的时候也可以用。
三、OkHttp3添加自签名证书
- 如何使用自签名证书?
1.获取证书流有两种方式:
- 将服务端提供的证书文件放到assets文件夹里面,然后获取。(因为是在assets文件下,所以会写入到apk里面)
- 打开证书文件,将证书里面的内容以字符串的形式通过流写入。(不会写入到apk中)
2.创建秘钥,添加证书进去
3.创建信任管理器,并把秘钥初始化到信任管理器里
4.获取SLL上下文,并把信任管理器初始化到SSL里
5.获取socket工厂,设置到okhttpclient中
6.检验主机名
if (UrlConsts.serverUrl.contains(“https://”)){
InputStream cerInputStream = null;
try {
//方式一:在assets中获取证书
cerInputStream =