当我使用 jdb 通过 jdwp 调试 android 应用程序时,似乎我无法从字节码级别获得任何信息。我知道通常只要我们有源代码行信息并使用反编译器就可以了,但问题是作者故意删除了源代码行信息,我只能获得字节码索引而不能获得行号。我想跟踪局部变量的值,但问题是它们被有意删除,这样我就不能只打印局部变量。
有什么方法可以通过调试器查询来获取类似于 Windows 中调试的临时值,我们可以在其中获取寄存器/内存的值?下面是我遇到的方法的一个例子,没有行信息,没有方法签名信息)
XXXClass.onMenuItemClick(), line=-1 bci=1
(堆栈跟踪)[1] XXXClass.onMenuItemClick(空)