【发布时间】:2017-07-24 17:28:59
【问题描述】:
我有一个在 Windows 10 下由 Android Studio 2.2.3 创建的 android 项目,该项目通过其包装 jar(通过 JNI)使用本机库。本机库是由 qmake 在 Android Studio 之外构建的,它将使用 android NDK r13b 中的 GCC 4.9 生成本机共享库,代码使用-g 选项编译。
为了使用这个原生库,我将包装器jar放在<proj_path>/app/libs目录下,将原生库放在<proj_path>/app/src/main/jniLibs/armeabi-v7a下,一切正常,我可以成功地从java代码调用原生库中实现的方法。
问题是我调试这个android项目的时候,我在cpp文件中设置的断点没有生效,请注意cpp文件不在android项目的源码树中,我只是从安卓工作室。我已经安装了最新的 LLDB,并以“混合”调试类型开始调试,我还使用“图像列表”LLDB 命令来确认调试时加载的本机库图像是未剥离的版本。但是断点不会命中。
我的配置有什么问题?
有人可以给我一些建议吗?
谢谢!
【问题讨论】:
-
你有什么消息吗?我想我有同样的问题。我已经阅读了大量关于这个问题的帖子,但我没有找到任何真正的解决方案。我还发布了question,因为几天前我没有在这里发表评论的声誉。谢谢。
-
Android JNI调试不支持调试原生库,必须附上C/C++源码。
标签: c++ android-studio debugging android-ndk java-native-interface