httpCanary 中文文档 下载 App

抓不到包怎么办:从启动到流量全排查

问题描述

httpCanary 抓包服务已启动(纸飞机变红色,有悬浮窗),打开目标 App 操作了半天,请求列表里却一个请求都没有。

排查清单

按以下顺序排查,从最常见的原因到最复杂的。

一、检查 VPN 连接状态

httpCanary 抓包的核心是 VPN 隧道。如果 VPN 没正常连上,自然抓不到包。

检查步骤:

  1. 手机状态栏是否显示 VPN 图标
  2. 系统设置 → 网络 → VPN → httpCanary 对应的 VPN 配置是否显示「已连接」
  3. 如果显示已断开或有错误提示:

二、VPN 冲突:同时只能有一个 VPN

Android 系统不允许同时运行两个 VPN 连接。如果你手机上同时开着这些东西,httpCanary 就无法启动抓包:

解决:关闭所有其他 VPN 相关应用,只保留 httpCanary。

三、目标应用没有产生网络请求

看起来「打开了 App 操作了」,但 App 可能真的没有发任何请求——比如:

验证方法:

  1. 用浏览器访问 https://www.baidu.com 或 https://example.com
  2. 回到 httpCanary 看能不能抓到浏览器的请求
  3. 如果浏览器的请求能抓到,说明 httpCanary 本身没问题,问题出在目标 App

四、过滤太严

目标应用、目标 Host 或搜索条件可能把所有请求都过滤掉了。

检查步骤:

  1. 进入 httpCanary 设置
  2. 暂时关闭所有目标应用和目标 Host 过滤
  3. 清除搜索面板的所有筛选条件
  4. 回到主界面,看列表是否有变化

五、应用使用 HTTP/3(QUIC)

HTTP/3 基于 QUIC 协议,不走标准 TCP 连接——部分版本的 httpCanary 可能无法完整捕获。

检查方法:在请求列表看已抓到的浏览器请求是什么协议版本。如果是 h3 或完全抓不到浏览器的请求,可能就是协议问题。

临时解决方案:在 WiFi 高级设置里禁用 QUIC(不同 ROM 路径不同),或者把手机切到蜂窝网络(部分运营商不支持 HTTP/3)。

六、系统级别的流量转发异常

极少数情况下,Android 的流量转发机制会出问题:

  1. 重启手机
  2. 重启后不打开其他应用,直接启动 httpCanary 抓包
  3. 用浏览器访问网页验证

重启能解决九成以上的系统层异常。

七、httpCanary 版本太旧

老版本的 httpCanary 可能不兼容新 Android 系统或新 TLS 协议。

检查步骤:

  1. 在设置 → 关于 里查看当前版本号
  2. 去 httpcanary.cn 或下载站点对比最新版本
  3. 版本过旧请升级

八、App 使用特殊网络栈

极少数 App 不走系统标准网络 API:

这种情况 httpCanary 确实抓不到——它只能拦截走系统网络栈的流量。

九、模拟器特殊情况

如果你在模拟器里使用 httpCanary:

快速诊断流程

打开浏览器访问网页
    ↓
能抓到浏览器请求?
    ├─ 能 → httpCanary 正常,问题在目标 App(过滤/SSL Pinning/协议)
    └─ 不能
        ↓
VPN 图标正常显示?
            ├─ 正常 → 关所有其他 VPN,重启 httpCanary
            └─ 不正常 → 删 VPN 配置,重启 httpCanary
                ↓
还是不行 → 重启手机,再试