dexsql 文档 打开应用

Smali 反汇编

Markdown 源文件 · dexsql app

阅读方法或类

使用 decode,通过 descriptor 或 DEX 坐标检查方法:

dexsql decode --input app.apk --method 'Lcom/example/Foo;->bar(I)V'
dexsql decode --input app.apk --file-id 0 --method-idx 123
dexsql decode --input app.apk --class 'Lcom/example/Foo;'

可重复 --input。--method、--method-idx、--class 三选一;索引查询需要 --file-id。descriptor 在多个 DEX 中出现时,错误会列出候选 file ID。类选择按方法索引顺序输出所有定义,包括 abstract/native 声明;空类成功但不输出方法。CLI 在所选方法全部解码成功后才写 stdout。

输出范围

输出使用 vN 寄存器、code-unit 标签、精确常量位和转义 UTF-16 字符串。支持标准 DEX 035、037–041 指令、payload 和 catch 指令。输出为方法块,不包含完整类/字段声明、注解或调试指令,不能直接作为完整类重新组装。Smali 无法无歧义表示的 call-site NaN 位或未引用 switch 表保留在注释中。Quickened/odex 指令返回带可用方法/偏移信息的错误。

使用 AI 客户端

连接后的 AI 可以先通过 SQL 找到方法,再分页阅读 smali。英文 MCP 解码参考说明了对应工具的调用流程。


Copyright (c) 2026 LSPosed Developers。本文档采用 MIT 许可证。