《安卓设备使用 Charles 抓包 证书下载失败 排查完整记录》
背景
在之前的使用中,Charles 可以正常抓取电脑及手机的 HTTP/HTTPS
流量,且证书未过期,一直没有问题。然而,最近手机突然无法通过代理抓包,访问 Charles 证书下载页面失败。怀疑可能与最近网络设备或
Wi-Fi 配置调整有关。为了排查和恢复正常使用,进行了以下操作:
- 对 Charles 中的映射规则进行了导出和备份,以防止配置丢失。
- 卸载并重装 Charles,确保软件配置和安装环境完整。
现象:
-
Charles 在电脑上可以正常抓包
-
手机无法通过代理抓包
-
手机无法下载 Charles 根证书(无法抓 HTTPS)
-
网卡优先级、Charles 配置、防火墙、证书本身都没有问题
解决方法
-
确认手机和 Charles 的连通性
-
手机浏览器访问:
http://<电脑IP>:<Charles端口>- 如果能显示 Charles 页面 → 手机和 Charles 互通正常
- 如果打不开 → 检查 Wi-Fi、路由器隔离、防火墙
-
-
下载并安装 Charles 证书
-
手机自带浏览器或 Chrome 访问【不同浏览器安全策略问题导致下载证书失败,并不是charles配置或者环境问题】:
http://chls.pro/ssl 或 http://charlesproxy.com/getssl -
安装证书:系统安全 → 从存储安装 → 类型 VPN/应用
-
-
设置手机代理
- WLAN → 高级 → 手动代理 → 服务器:电脑 IP,端口:Charles 端口(默认 8888)
-
Charles 设置 SSL Proxying
- Proxy → SSL Proxying Settings → Enable SSL Proxying → Host
*、Port*
- Proxy → SSL Proxying Settings → Enable SSL Proxying → Host
-
确认抓包
- 打开手机浏览器或 APP
- Charles 能捕获 HTTP/HTTPS 请求
PS:不同系统和设备的环境差异很大,本经验仅供参考,具体操作可能因个人场景而异。