如何从 Android 应用中隐藏 Charles?

How to hide Charles from an Android App?

我已将 Charles 配置为代理,因此我可以捕获 android phone.

上的所有请求

我能够捕获来自除一个特殊应用程序之外的所有应用程序的请求。当我将 wifi 的代理设置为我的计算机和端口 8888 时,此应用程序无法连接到网络。而其他应用程序同时连接正常。

我也尝试过使用 Packet Capture,结果是一样的。

所以我的问题是这个应用程序如何知道我在使用 Charles?有什么办法可以隐藏 Charles 吗?

您是否在 android 设备上设置了 Charles ssl 证书?可能是该应用拒绝了 Charles 的自签名证书。

在此处查看有关如何设置的详细信息 -> https://community.tealiumiq.com/t5/Tealium-for-Android/Setting-up-Charles-to-Proxy-your-Android-Device/ta-p/5121

我找到问题了。当我升级 Charles 时,证书不会自动更新。这意味着我必须从 mac 的钥匙链中删除旧证书,然后重新安装最新的证书,然后相信它。否则,所有 HTTPS 请求方法都将成为 "CONNECT" 方法,并且永远失败。

如果您遇到同样的问题,请尝试在 mac 和 phone 中删除旧证书并重新安装最新的证书。希望你能解决问题。