无法在eclipse上调试基于android库构建的android本机代码
无法在eclipse上调试基于android库构建的android本机代码,android,debugging,android-ndk,android-library,Android,Debugging,Android Ndk,Android Library,我已经为此挣扎了3天,但我无法完成它。 我有一个android项目,它链接到eclipse上的android库,其中包含本机代码 我看到了,这与我的模式相同,但是这里提出的步骤不起作用 我在这里重写了以下步骤: 转到“运行”菜单->“调试配置” 在左窗格的“Android本机应用程序”下,选择您的应用程序 在“调试器”选项卡下,单击“共享库”部分中的“添加…” 浏览到android库项目目录并添加其子目录obj/local/armeabi 应用和调试 第一个问题是,如果应用程序未设置为本机应用程
我已经为此挣扎了3天,但我无法完成它。
我有一个android项目,它链接到eclipse上的android库,其中包含本机代码
我看到了,这与我的模式相同,但是这里提出的步骤不起作用 我在这里重写了以下步骤:
然后应用程序运行并正确链接,我能够按照这些步骤操作——1到5。但当我调试它时,控制台显示(BasicCharacterWithLib是应用程序的名称): 而且它永远不会在任何断点上停止(本机或非本机) 我也知道,在不同的配置(直接执行应用程序)上有相同的症状,但仍然没有答案 我已经在同一台设备上成功调试了另一个应用程序,这是一个测试应用程序,其中包含本机代码,因此我猜问题不可能是由于设备配置造成的 你知道怎么解决吗 一些进一步的细节:
- 我使用adt包中的eclipse(版本v22.6.2,sdk可用的最高api级别为19,ndk版本为r9)
- 应用程序在多个线程上运行(通过AsyncTask从java执行),但此时仅启动主线程。
- 如果我将其作为android应用程序进行调试,即使是在多线程中,调试过程也只能在java端工作
- 我在Application.mk中将APP_平台设置为android-14,与manifest中的minSdkVersion=“14”相同
- 我还尝试重新启动eclipse,重新启动设备,并再次拔下USB插头
- 请参见此。很可能是磁盘上不存在的同一问题的
obj/local/armeabi
文件夹 恐怕这与我的问题无关。如果我将库更改为应用程序本身,我可以调试库。问题是,这是一个android库,我发现“共享库”下的“添加”按钮没有添加所需的尾部斜杠。您可以深入eclipse设置文件并编辑该值,但只需确保设置了一个调用set solib search path
的gdb命令文件就更容易了。我的经验是,不设置搜索路径不应该导致您看到的错误输出。
[2014-05-27 12:18:09 - BasicCharacterWithLib] Error while obtaining file from device
[2014-05-27 12:18:09 - BasicCharacterWithLib] com.android.ddmlib.SyncException: Writing local file failed!