要解决Android 9(Pie)无法通过网络监控工具如Charles代理和Fiddler捕获API的问题,可以通过设置网络安全配置来解决。以下是一个代码示例,演示如何设置网络安全配置以允许捕获API。
network_security_config.xml
的XML文件,并将其放置在res/xml/
目录下。
在上述示例中,我们创建了一个base-config
,并将cleartextTrafficPermitted
设置为true
,以允许非加密的流量。您还可以在trust-anchors
中添加任何自定义的CA证书,以便信任特定的证书。
将您的CA证书文件添加到res/raw/
目录下。假设证书文件名为my_ca_cert.pem
。
在AndroidManifest.xml
文件中,为应用程序的application
标签添加以下属性:
...
在上述示例中,我们将networkSecurityConfig
属性设置为指向我们在第一步中创建的network_security_config.xml
文件。
请注意,这种配置可能会降低应用程序的网络安全性,因为它允许非加密的流量。因此,应该谨慎使用,并仅在开发和测试环境中使用。
希望以上解决方法对您有帮助!
上一篇:Android 9(Google Pixel XL)上的设备地址的BLE扫描过滤器不起作用。
下一篇:Android 9(SDK 28)上的Android生物识别功能-手机支持面部识别但BiometricManager返回null