如果立即崩溃,如何使用GDBSERVER调试Android浏览器?

时间:2011-10-04 13:08:53

标签: android debugging browser gdbserver

我修改了我的Android rootfs中的libwebcore.so,现在我想调试它但是如果我开始时浏览器会立即崩溃

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

如果我尝试使用-D开关,它会挂起并说:

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

但是当我将gdbserver附加到浏览器pid时没有任何反应。

如果浏览器在启动后崩溃,有没有办法调试浏览器?

2 个答案:

答案 0 :(得分:2)

  1. 在libwebcore.so内尽可能早的位置放置一个无限循环(或者至少足够早,你知道崩溃点还没有执行。)
  2. 将gdbserver附加到PID
  3. 使用GDB打破无限循环
  4. 调试

答案 1 :(得分:0)

NDK开发人员可以使用ndk脚本轻松调试应用程序。在调试AOSP本机代码时,您可以自己动手。

由于您尝试调试的应用是Android Java应用,您可以使用app_process作为目标可执行文件,并使用gdbserver连接到正在运行的应用。 请查看Debugging native libs of Android Java apps以获取分步教程。