Skip to content

局限性总览 ​

⚠️ r0capture 不是万能的,明确的支持边界。

支持的 ​

  • ✅ 安卓 7~16 真机(禁止模拟器)
  • ✅ 走系统 SSL 栈的所有应用层协议(HTTP/WS/FTP/XMPP/IMAP/SMTP/Protobuf...)
  • ✅ 所有基于系统 SSL 的框架(OkHttp/Retrofit/Volley/HttpURLConnection)
  • ✅ 无视证书校验/绑定/双向认证
  • ✅ 无视加固(整体壳/二代壳/VMP)

不支持的 ​

来自 README

部分开发实力过强的大厂或框架,采用的是自身的 SSL 框架,比如 WebView、小程序或 Flutter,这部分目前暂未支持。部分融合 App 本质上已经不属于安卓 App,没有使用安卓系统的框架,无法支持。暂不支持 HTTP/2、或 HTTP/3,该部分 API 在安卓系统上暂未普及或布署,为 App 自带,无法进行通用 hook。各种模拟器架构、实现、环境较为复杂,建议珍爱生命、使用真机。暂未添加多进程支持,比如:service或:push等子进程。

不支持项原因详见
WebView自带 BoringSSLWebView 限制
小程序自研内核小程序限制
Flutter内嵌 BoringSSLFlutter 限制
HTTP/2部分实现自带HTTP/2 限制
HTTP/3 / QUIC走 UDP,不走 SSL_read/writeHTTP/3 限制
模拟器架构环境复杂模拟器限制
多进程子进程需 Child-gating多进程限制

已知的运行约束 ​

  • 仅限安卓平台
  • 需 root(运行 frida-server)
  • frida 版本与安卓版本需匹配(详见 frida17 兼容)

遇到抓不到时 ​

按以下顺序排查:

  1. 走系统 SSL 栈吗?(非 WebView/Flutter/Cronet)
  2. frida-server 跑起来了吗?frida-ps -U 能列进程吗?
  3. 进程名/包名对吗?(attach 用应用名,spawn 用包名)
  4. 流量是子进程发的吗?(:service/:push)
  5. 走 HTTP/3(QUIC) 吗?(阻断 UDP 试试降级)

详见 抓不到包排查。

相关文档 ​

基于 VitePress 构建 · 教学用途