Android浏览器突然崩溃如何用GDBSERVER调试?

发布于 2024-12-08 05:06:10 字数 320 浏览 0 评论 0原文

我修改了 Android rootfs 中的 libwebcore.so,现在我想调试它,但是如果我从

am start -n com.android.browser/.BrowserActivity

开始,浏览器会立即崩溃如果我尝试从 -D 开关开始,它挂起并显示:

应用程序浏览器(进程 com.android.browser)正在等待调试器附加

但是当我将 gdbserver 连接到浏览器pid 没有任何反应。

那么如果浏览器启动后崩溃了,有没有办法调试呢?

I modified the libwebcore.so in my Android rootfs and now I want to debug it but the browser crashes instantly if I start with

am start -n com.android.browser/.BrowserActivity

If I'm trying to start with -D switch it hangs and says:

Application Browser (process com.android.browser) is waiting for the debugger to attach

But when I attach the gdbserver to the browser pid nothing happens.

So is there a way to debug the browser if it crashes after you start it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

ぺ禁宫浮华殁 2024-12-15 05:06:10
  1. 在 libwebcore.so 内尽早放置无限循环(或者至少足够早,以便您知道崩溃点尚未执行。)
  2. 将 gdbserver 附加到 PID
  3. 使用 GDB 来打破无限循环
  4. 调试
  1. Place an infinite loop at the earliest possible point inside libwebcore.so (or at least early enough that you know the point-of-crash will not have executed yet.)
  2. Attach gdbserver to PID
  3. Use GDB to break the infinite loop
  4. Debug
慢慢从新开始 2024-12-15 05:06:10

NDK 开发人员可以使用 ndk 脚本轻松调试应用程序。当涉及到调试 AOSP 本机代码时,您只能靠自己了。

由于您尝试调试的应用程序是 Android Java 应用程序,因此您可以使用 app_process 作为目标可执行文件并使用 gdbserver 附加到正在运行的应用程序。
请检查调试 Android Java 应用程序的本机库逐步教程。

NDK developers can use ndk scripts to debug apps easily. When it comes to debugging AOSP native code, you are on your own.

As the app you are trying to debug is Android Java app, you can use app_process as target executable and attach to running app using gdbserver.
Please check Debugging native libs of Android Java apps for step by step tutorial.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文