".line"在smali代码语法中的含义是什么?(Android-Smali代码)

Beh*_* Gh 10 java syntax mobile android smali

请看一下这个问题

反编译的smali代码包含像.line 3 或的东西.line 7.

我无法理解.line应该是什么,请详细说明用法.

ζ--*_*ζ-- 16

.line n标记用于调试和堆栈跟踪.如果未捕获异常,或者需要填写堆栈跟踪,则会从.line语句中获取行号.如果缺少这个,那么stacktraces将缺少行号.

  • @user2525702 `.line` 是原始 Java 源代码中的一行,它转换为 smali 的以下部分。如果你删除它们,你可能不会得到像`at com.foo.bar.Bar(Bar.java:85)`这样好的异常堆栈跟踪 (2认同)
  • @Simon在您检查封闭源应用程序中的潜在恶意软件代码时非常有用. (2认同)