android 抓包与防抓包设置
1、开发阶段,开启可抓包;
2、生产上线,开启防抓包;
一、设置允许抓包
1、在res文件夹下新建xml文件夹;
2、在xml文件夹下新建xml文件:network_security_config.xml
<?xml version="1.0" encoding="utf-8"?>
<!--上线使用-->
<!--<network-security-config
xmlns:tools="http://schemas.android.com/tools">
<base-config cleartextTrafficPermitted="true" />
<trust-anchors tools:ignore="NetworkSecurityConfig">
<certificates src="system" overridePins="true" />
<certificates src="user" overridePins="true" />
</trust-anchors>
</network-security-config>-->
<!--开发使用-->
<network-security-config>
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
<certificates src="system" overridePins="true" /> <!--信任系统证书-->
<certificates src="user" overridePins="true" /> <!--信任用户证书-->
</trust-anchors>
</base-config>
</network-security-config>
3、在AndroidManifest.xml文件中的application节点下添加一句代码:
android:networkSecurityConfig="@xml/network_security_config"
4、网络层如果使用的是OkHttp,在配置OkHttpClient时不要设置.proxy(Proxy.NO_PROXY)
。。。。。
以上即完成可抓包设置**
二 、设置防抓包
1、将okhttpclient设置无代理模式:.proxy(Proxy.NO_PROXY)
2、将AndroidManifest.xml文件下设置的networkSecurityConfig属性删除;或者将network_security_config.xml文件设置为:
<?xml version="1.0" encoding="utf-8"?>
<!--上线使用-->
<network-security-config
xmlns:tools="http://schemas.android.com/tools">
<base-config cleartextTrafficPermitted="true" />
<trust-anchors tools:ignore="NetworkSecurityConfig">
<certificates src="system" overridePins="true" />
<certificates src="user" overridePins="true" />
</trust-anchors>
</network-security-config>
<!--开发使用-->
<!--<network-security-config>
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
<certificates src="system" overridePins="true" /> <!–信任系统证书–>
<certificates src="user" overridePins="true" /> <!–信任用户证书–>
</trust-anchors>
</base-config>
</network-security-config>-->```