Android 配置https抓包

在Android中抓包常用fidder或者Charles,http可以直接抓去到请求信息,https抓取不到

下面介绍两种抓包方案,可以轻松的获取请求的信息。

一、使用用户证书

1、application中

android:networkSecurityConfig="@xml/network_security_config"
android:usesCleartextTraffic="true"

2、res/xml

新建network_security_config:

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <debug-overrides>
        <trust-anchors>
            <!--信任系统的证书-->
            <certificates src="system" />
            <!--信任用户安装的证书-->
            <certificates src="user" />
        </trust-anchors>
    </debug-overrides>
    <base-config cleartextTrafficPermitted="true" />
</network-security-config>

 3、安装证书

        将证书下载到手机 ——> 打开手机设置 ——> 从存储设备安装证书 ——> 从存储设备安装证书 ——> CA证书 ——> 选择仍然安装 ——>  存储卡路径中选择下载的xxx.cer证书  ——> 安装完毕提示已安装

 二、使用内置证书

1、application中

同上

2、res/xml

新建network_security_config:

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <!--内置证书-->
    <domain-config>
    	//添加https的域名,例如https://blog.csdn.net/mrxiagc,填写log.csdn.net,有多个添加多个,不添加的则抓取不到
        <domain includeSubdomains="true">dc.ccrz.com.cn</domain>
        <domain includeSubdomains="true">192.168.145.239</domain>
        <trust-anchors>
        	//注意这里没有后缀名.cer
            <certificates src="@raw/charles" />
        </trust-anchors>
    </domain-config>
</network-security-config>

 

3、res/raw

        将导出的证书放在raw下,例如:charles.cer

 

 

posted on 2024-01-18 14:28  巫山老妖  阅读(275)  评论(0编辑  收藏  举报