gpt4 book ai didi

android - 在android中生成核心转储

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:10:14 25 4
gpt4 key购买 nike

我正在使用一些共享的开发一个 android 的应用程序我编写并使用 ndk-r5b 编译的库。该应用程序有效,y 和对库的调用也有效,但我检测到一些错误,段错误,我需要调试它,但是,我不知道如何调试来自 android 的 native 代码,我不知道我是否可以生成核心转储,与在 Linux 中一样,用于调试我的库。

有什么想法吗?

最佳答案

ndk 附带了 ndk-gdb,据说可以让您调试 native 应用程序。另外,如果你下载了整个 andriod 开源项目,他们也有一些用于调试的 gdb 版本。查看 ndk 的 docs/文件夹以了解如何使用它。本教程也可能有帮助:http://vilimpoc.org/blog/2010/09/23/hello-gdbserver-a-debuggable-jni-example-for-android/

但是,正如我最近提出的一个问题所示:Running ndk-gdb with package not found error on motorola phone我仍然无法让它工作。

编辑:您在评论中说您使用的是三星设备:三星决定破坏 native 调试所需的一些关键内部结构,但如果您拥有设备的根访问权限,则很容易修复。如果你使用 --verbose 标志,你可能会发现错误与那个不同,一个包未知错误。那是因为它正在查找/data/system/packages.list,但三星将该文件重命名为/dbdata/system/packages.list。因此,如果您在/data/system/packages.list 中创建指向该文件的符号链接(symbolic link),(需要 root 访问权限)它应该可以工作。或者至少 ndk 邮件列表是这样声明的:http://osdir.com/ml/android-ndk/2011-03/msg00036.html

关于android - 在android中生成核心转储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6186365/

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