gpt4 book ai didi

android - 如何在 Android 上使用 GDB 运行 Dalvik 可执行文件?

转载 作者:太空狗 更新时间:2023-10-29 16:24:20 26 4
gpt4 key购买 nike

我想用 GDB 在 Android 上调试一个应用程序,我可以用 gdb 和进程号 Hook 它,但我想从一开始就看看它做了什么。

有没有办法做到这一点?

最佳答案

在获得 root 权限的设备或模拟器上,您可以将 gdb 附加到 zygote 并在新派生的进程将要采用正在启动的应用程序的身份的地方放置一个断点。

如果您修改 zygote 以等待调试器连接,这可能是最简单的。我相信 Jdwp 调试系统中有类似的东西可以让你在代码启动的早期进入 Java 调试器,但我不知道已经内置了 gdb 可比的东西。虽然我想你可以等一下对于 jdwp,并在附加(然后分离)Java 调试器之前附加 gdb。

更新:我试过这个,通过使用 gdb 附加到 zygote 并修改将由 child 早期执行的单个代码字进入无限循环,然后从 zygote 分离。我想一旦它出现在“ps”中我就会 gdb 新的 child 并恢复它以便它可以继续。问题是 child 被杀死的速度(大概是因为 react 迟钝)比我输入所有命令的速度还快。所以它必须由一个程序来完成。如果不停止并杀死它,您可能无法在早期看到那么多 - 我的意思是您可能会在那里得到一个 strace,但是您希望从阅读源代码中学到什么?

关于android - 如何在 Android 上使用 GDB 运行 Dalvik 可执行文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5906027/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com