android - Android中调试native代码的工具有哪些

标签 android eclipse android-ndk adt ubuntu-12.10

<分区>

我对 android 的 csipsimple 应用程序做了一些更改,我想调试它的 native 代码。我正在使用 ADT bundle v21.1 在 Ubuntu 12.10 下开发(eclipse 3.7,cdt 8.1)。

我遇到了 this在 eclipse 下进行 native 调试的教程,但它对我不起作用(请参阅我的问题 Debugging native code in android under eclipse fails)。 我现在正在尝试 ARM DS-5没有额外运气的解决方案。 我也遇到了这个 nvidia solution但不确定是否值得付出努力。 我还没有尝试 Sequoyah 插件,因为它看起来已经过时了。

任何人都可以指导我在设备(我的设备是 htc dream)上调试 Android native 代码的稳定的 gui 调试工具或方法。

最佳答案

没有人喜欢这个答案,但是 ndk-gdb 非常可靠。使用起来可能会很痛苦,但一旦你开始使用它就没那么糟糕了。

基本的调试方法是:

  1. 在 Eclipse 中加载 native 库的行上设置断点。
  2. 开始在 Eclipse 中调试
  3. 跨过加载库线。不要继续!!
  4. 在命令行中,启动ndk-gdb
  5. 在 gdb 中设置断点。输入“c”继续
  6. 返回 Eclipse 并继续

瞧!您的 C 断点将被命中!

当然,您需要在终端中设置所有内容...如果您不熟悉,我建议您打印一份 gdb 备忘单。

关于android - Android中调试native代码的工具有哪些,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17069910/

相关文章:

android - 无法为 Android 构建 Mupdf(ExceptionInitializerError)

php - 解析 JSON 数据时出错。 JSONException : End of input at character

java - 如何显示存储为 BLOB 的图像?

java - Eclipse MemoryAnalyzer 和 sdkman

Java 反射 - 类加载器检测新旧包中移动的类

Android: native 方法在哪个线程中运行?

java - Android、AccountManager 和 OAuth

java - 如何在 Intellij 上将样式更改为 java google 样式

java - Eclipse libGDX 项目无法解决本地 repo 的 gradle 依赖但 CLI 没有问题?

android - libspotify 在 Android 上因 SIGSEGV 而失败