没有 root 权限
❌ frida-server 需要 root 运行,无 root 无法抓包。
症状
bash
adb shell "su -c '/data/local/tmp/frida-server &'"
# su: not found 或 permission denied解决
1. 真机解锁 Bootloader + 刷 Magisk
最标准的 root 方式:
- 解锁 Bootloader(OEM 解锁)
- 刷 Magisk(通过 boot.img patch)
adb shell su能进 root 即成功
2. 用已 root 的设备
- Pixel 系列(易解锁)
- redroid 云手机(容器内默认 root)
3. 不 root 的替代
r0capture 必须依赖 frida,frida-server 必须 root。无 root 无法用 r0capture。替代:
- 系统级 VPN 抓包(但需绕过 pinning)
- mitmproxy(需装根 CA + 绕 pinning)
模拟器不推荐
模拟器虽自带 root,但环境复杂不推荐。详见 模拟器限制。