android 抓包与防抓包设置
1、开发阶段,开启可抓包;
2、生产上线,开启防抓包;
一、设置允许抓包
1、在res文件夹下新建xml文件夹;
2、在xml文件夹下新建xml文件:network_security_config.xml
<?xml version="1.0" encoding="utf-8"?>
<!--上线使用-->
<!--<network-security-configxmlns: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-configxmlns: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>-->```