Jacky's blog
首页
  • Android
  • Web
  • Server
  • Python
  • iOS
  • Java
  • Vue
  • 计算机基础
  • AI
  • 全部工具
  • CLI 工具
  • 编辑器
  • 开发工具
  • 构建工具
  • 版本控制
  • 调试工具
  • 网络工具
  • 个人成长
  • 博客
  • 分类
  • 标签
  • 归档
收藏
GitHub (opens new window)

Jack Yang

编程; 随笔
首页
  • Android
  • Web
  • Server
  • Python
  • iOS
  • Java
  • Vue
  • 计算机基础
  • AI
  • 全部工具
  • CLI 工具
  • 编辑器
  • 开发工具
  • 构建工具
  • 版本控制
  • 调试工具
  • 网络工具
  • 个人成长
  • 博客
  • 分类
  • 标签
  • 归档
收藏
GitHub (opens new window)
  • 计算机基础

  • 网络

  • 操作系统

  • Shell

  • 安全

    • 逆向
    • android手机root
    • frida
    • frida-trace
      • -j
        • 示例
        • 组合示例
    • objection
    • magisk
    • 大马程序
    • 加解密技术
    • smali调试抖音app
  • 设计模式

  • cs
  • secure
Jacky
2024-06-25
目录

frida-trace

frida-trace is a tool for dynamically tracing function calls. 官方文档 (opens new window)。基础说明见 Frida。

  • frida-trace -h
  • frida-trace -U -i "Java_*" <package> trace JNI 方法

# -j

frida-trace 的 -j 参数用于指定要跟踪的 Java 方法。你可以使用通配符来匹配类名和方法名,从而实现灵活的跟踪规则。以下是一些常见的规则示例:

基本语法

frida-trace -U -j "<class name>.<method name>"
1

# 示例

  1. 跟踪特定类的特定方法

跟踪 com.example.myapp.MainActivity 类的 onPause 方法:

frida-trace -U -j "com.example.myapp.MainActivity.onPause"
1
  1. 跟踪特定类的所有方法

跟踪 com.example.myapp.MainActivity 类的所有方法:

frida-trace -U -j "com.example.myapp.MainActivity.*"
1
  1. 跟踪包中的所有类的特定方法

跟踪 com.example.myapp 包中的所有类的 onPause 方法:

frida-trace -U -j "com.example.myapp.*.onPause"
1
  1. 跟踪包中的所有类的所有方法

跟踪 com.example.myapp 包中的所有类的所有方法:

frida-trace -U -j "com.example.myapp.*.*"
1
  1. 跟踪带有特定参数的方法

跟踪 com.example.myapp.MainActivity 类中,带有 int 类型参数的 setUser 方法:

frida-trace -U -j "com.example.myapp.MainActivity.setUser(int)"
1
  1. 跟踪带有多个参数的方法

跟踪 com.example.myapp.MainActivity 类中,带有 String 和 int 类型参数的 updateUser 方法:

frida-trace -U -j "com.example.myapp.MainActivity.updateUser(java.lang.String, int)"
1

# 组合示例

使用多个 -j 参数来跟踪多个方法,例如跟踪 onPause 和 onResume 方法:

frida-trace -U -j "com.example.myapp.MainActivity.onPause" -j "com.example.myapp.MainActivity.onResume"
1

跟踪所有 Fragment 的 onPause 和 onResume 方法 假设你的 Fragment 类都在 com.example.myapp.fragments 包下:

frida-trace -U -j "com.example.myapp.fragments.*.onPause" -j "com.example.myapp.fragments.*.onResume"
```

示例命令

```bash
frida-trace -U -j "com.example.myapp.MainActivity.onPause" -j "com.example.myapp.MainActivity.onResume" -f com.example.myapp
```

这条命令将会附加到 com.example.myapp 应用,跟踪 com.example.myapp.MainActivity 类中的 onPause 和 onResume 方法

## `!` 与 `.`

> 使用 `!` 符号可以更简洁地指定要跟踪的方法,提高规则的可读性和简洁性

- `-j 'com.example.myapp.MainActivity!*'`: 使用 `!` 符号表示跟踪指定类中的所有方法,包括私有方法和继承自父类的方法
- `-j 'com.example.myapp.MainActivity.*'`: 使用 `.` 符号表示跟踪指定类中的所有方法,但不一定包括私有方法和继承的方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#security#reverse-engineering#cs-fundamentals
上次更新: 2026/10/18, 22:14:48
frida
objection

← frida objection→

最近更新
01
Codex 使用与会话管理指南
10-17
02
Tailscale 入门:让自己的设备跨网络互联
10-15
03
GitHub CLI(gh)工作流与 CI 排查
10-08
更多文章>
Theme by Vdoing | Copyright © 2019-2026 Jacky | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式