3

今天我购买了用于原生开发的 Android 平板电脑——Acer Iconina Tab A500 (Honeycomb 3.1) 支持 Tegra。

然后我从http://developer.nvidia.com/tegra-android-development-pack下载并安装了 Tegra Android Development Pack(Windows 和 Mac) 。当然,我在应用程序设置中打开了“USB 调试”。

我尝试通过“Debug As -> Android NDK Application”菜单命令调试示例应用程序(如 es2_globe),但在构建之后 - 没有任何反应。

应用程序未启动。但是如果我选择“Debug As -> Android Application”或“Run As -> Android Application”——一切都很好。

Mac 和 Windows 上的情况相同。

那么,我应该怎么做才能使 NDK 调试工作?

4

2 回答 2

0

这可能是您的应用程序未启动的各种原因,您可以在控制台输出中看到有什么问题,例如在以下示例中 gdbserver 未成功运行,这种情况可以修复 root 设备。

[2011-11-03 22:01:58 - testndk] NDK:适用于 Android NDK 的 NVIDIA 调试管理器!
[2011-11-03 22:01:58 - testndk] NDK:adb 运行正常...
[2011-11-03 22:01:58 - testndk] NDK:执行 com.xxx.android.testndk.TestNdkActivity 活动启动
[2011-11-03 22:01:58 - testndk] NDK:自动目标模式:使用设备 'HT09AP801162'
[2011-11-03 22:01:58 - testndk] NDK:检查是否有正在运行的 gdbservers 0.079
[ 2011-11-03 22:01:58 - testndk] NDK:未找到运行 gdbserver 进程。
[2011-11-03 22:01:58 - testndk] NDK:检查是否有正在运行的应用程序 com.xxx.android.testndk 0.188
[2011-11-03 22:01:58 - testndk] NDK:正在运行的应用程序不是成立
[2011-11-03 22:01:58 - testndk] NDK:卸载包 com.xxx.android.testndk 0.282
[2011-11-03 22:02:00 - testndk] NDK:同步应用程序 1.469
[2011-11- 03 22:02:00 - testndk] NDK:将 testndk.apk 上传到设备 'HT09AP801162'
[2011-11-03 22:02:00 - testndk] NDK:安装 testndk.apk ...
[2011-11-03 22 :02:01 - testndk] NDK:成功!
[2011-11-03 22:02:02 - testndk] NDK:启动应用程序
3.329 [2011-11-03 22:02:02 - testndk] NDK:在设备上启动活动
com.xxx.android.testndk.TestNdkActivity
[2011 -11-03 22:02:02 - testndk] NDK:执行 shell 命令:am start -D -n com.xxx.android.testndk/com.xxx.android.testndk.TestNdkActivity -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
[2011-11-03 22:02:02 - testndk] ActivityManager:开始:Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.xxx.android.testndk/ .TestNdkActivity }
[2011-11-03 22:02:02 - testndk] NDK:等待 3 秒让应用程序启动
3.891 [2011-11-03 22:02:02 - testndk] NDK:尝试将调试器连接到 'com .xxx.android.testndk' 在端口 8602
[2011-11-03 22:02:05 - testndk] NDK:执行端口转发 6.891
[2011-11-03 22:02:05 - testndk] NDK:计算启动的 PID应用程序 6.907
[2011-11-03 22:02:05 - testndk] NDK:找到已启动应用程序的 PID:1308
[2011-11-03 22:02:05 - testndk] NDK:启动 gdbserver:12345 --attach 1308 7.016
[2011-11-03 22:02:05 - testndk] GdbServerReceiver:gdbserver:权限被拒绝
[2011-11-03 22:02:12 - testndk] NDK:Gdbserver 未正确启动

于 2011-11-03T22:40:28.173 回答
0

Native Debug 可能无法正常工作的原因有很多。您可以尝试以下方法:

  1. 我只能使用ndk版本r8d调试native,以前的版本给了很多困难
  2. 如果在编译期间或与设备同步期间有任何错误,请检查控制台视图
  3. 有时会出现“gdbserver 分段错误”的错误。验证您正在使用 NDK_DEBUG = 1 进行编译。也可以在另一台设备上尝试,有时该设备是有问题的设备。
  4. 打开 bin 文件夹中的 apk,并验证除了正常的 .so 文件之外还有 gdbserver 和 gdb.setup
  5. 以防万一,检查清单中的调试标志是否为真
  6. 重新启动 adb 并断开重新连接设备会有所帮助。

有关更多详细信息,您可以发布控制台视图显示的错误。

于 2013-05-08T18:08:39.673 回答