使用DS-5在Android中调试本机(c/c++)代码



我正在尝试调试一个Android项目,该项目具有ARM开发工作室的本地代码,但我无法使其工作。

我尝试了所有我能找到的教程和其他在线帮助,但当我试图调试它时,它就是不起作用。

然后我决定尝试一个简单的例子,而不是我的(更)复杂的项目,只是为了首先让调试器运行,但即使这样也失败了。
我正在使用这个教程:将hello-neon应用程序加载到Android目标(除了我想在真正的设备上运行它)。
我遵循了所有的步骤,但是当我最终尝试调试时,我得到了这个消息:

无法连接到Hello Neon示例。

原因:

脚本文件(push_pull.py)执行失败:

检查adb连接超时错误

查看Target Console视图了解更多详细信息

"目标控制台"为空,没有提供更多细节。

我正在linux机器(64位Mint 12)和NDK r8e上使用eclipse (Juno release 2)。
我正在尝试运行项目的设备是三星S2 (android 4.1.2)。

知道为什么会这样吗?
谢谢。

我也有同样的问题。但在一两个月前调试应用的原生部分是没有任何问题的。它工作得很好。我很困惑,但正在解决这个问题。首先看看是否有一个"gdbserver"文件在文件夹"二进制文件"(C/c++的角度)?第二件事:我认为亚行连接有一个问题。我尝试过各种设备(索尼Xperia和两款rooged tab,大小由HTC生产)和各种操作系统(OS x mavericks eclipse kepler带有ARM和Android插件,Ubuntu 12.04 DS-5 CE带有Android插件);这是结果:调试只在Mac上的大HTC上开始,因为当我只插入HTC时,DS-5视角开始在DS调试配置中选择设备的帧"连接"中的设备信息(设备信息:API级别等,Root访问可用)可能问题是在Root访问....

继续解决……

这是解。在ds-5调试配置中检查您的设备(在"连接"面板中),比较它的服务器。当执行命令"adb devices"(设备必须连接,当然)时,您可以获得该数字。如果列表中没有设备,请检查您的JRE,它必须来自Oracle,并像这里提到的那样安装此链接。然后重启eclipse(或操作系统),如果没有帮助复制adb从android-sdk目录到/bin/或导出$PATH(在我的情况下,我有一个导出<但需要复制adb)。如果设备出现在列表中-那很好))))选择它并查找"设备信息"…这里是非常重要的一点-必须有一个根访问它!!>

这里有一个实用的建议:从终端启动DS-5,看看发生了什么。

您的设备未连接,尝试"adb devices"列出您的设备如果您看到某些设备被列为离线,请通过以下帖子解决此问题:Android 4.2.2 Device Offline

解决方法如下。在ds-5调试配置中检查您的设备(在"连接"面板中),比较它的服务器。当执行命令"adb devices"(设备必须连接,当然)时,您可以获得该数字。如果列表中没有设备,请检查您的JRE,它必须来自Oracle,并像这里提到的那样安装此链接。然后重启eclipse(或OS),如果没有帮助复制adb从android-sdk dir到/bin/或导出$PATH(在我的情况下,我有一个导出<但需要复制adb)。如果设备出现在列表中-那很好))))选择它并查找"设备信息"…这里是非常重要的一点->必须有一个根访问!!

这里有一个实用的建议:从终端启动DS-5,看看发生了什么。

我是这么做的:

删除除您要使用的设备外的所有设备

$ adb kill-server
$ adb start-server
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
$ adb root
adbd is already running as root

最新更新