已解决android7.0以上使用charles抓HTTPS包报错certificate_unknown
Posted up up!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了已解决android7.0以上使用charles抓HTTPS包报错certificate_unknown相关的知识,希望对你有一定的参考价值。
手机上是否有装证书都可以使用下面的方法:
-
在你的androidManifest.xml文件中添加如下配置:
<?xml version="1.0" encoding="utf-8"?><manifest … >
<application android:networkSecurityConfig="@xml/network_security_config"
… >
…
-
在res目录下新建一个xml文件夹,之后在res/xml/路径下新建文件network_security_config.xml
res/xml/network_security_config.xml:
<?xml version="1.0" encoding="utf-8"?><network-security-config> <domain-config> <domain includeSubdomains="true">你要抓取的域名</domain> <trust-anchors> <certificates src="@raw/证书文件名"/> </trust-anchors> </domain-config>
-
在res目录下新建一个raw文件夹,将手机上安装的证书文件放入res/raw/目录下,证书格式:pem,ca等(chales的话就是将你在手机浏览器打开http://charlesproxy.com/getssl下载的证书放入即可),步骤2中的证书文件名,就是你放入res/raw/目录下文件的名字
配置完重新运行项目,就可以看到报文了!
以上是关于已解决android7.0以上使用charles抓HTTPS包报错certificate_unknown的主要内容,如果未能解决你的问题,请参考以下文章
已解决android7.0以上使用charles抓HTTPS包报错certificate_unknown
把charles,Fiddler 证书安装到android根目录,解决android7.0以上抓包无网络问题
使用Charles对自己开发的 App在Android7.0以上的手机的https请求抓包——亲测有效
Android 7.0 以上 Charles 和 Fiddler 无法抓取 HTTPS 包的解决方式