-1

我今天安装了 Visual Studio 2017(并重新安装了……)并尝试在 C++ 中调试 Android 应用程序。当我在 Microsoft Android 模拟器中以调试模式启动应用程序时,我收到一个错误消息框:

找不到 Android 调试桥 (adb.exe)

无论如何,模拟器正在启动..现在我尝试再次启动应用程序,我在输出中收到此错误消息:

1>安装包出错。设备 '' 无效或未运行。请切换到其他设备,或使用 Android Virtual Device (AVD) Manager 启动兼容的模拟器,或连接兼容的 Android 设备。

1>设备无效或未运行。

注意空的设备名称。

当我在真正的 Android 设备中启动应用程序时,我收到此错误消息框:

无法开始调试。Android 命令“运行方式”失败。可打包的“com.**********************”未知。

故障排除步骤: - 尝试从应用列表启动应用。如果应用不在应用列表中,或者无法启动,这可能表明应用部署存在问题。- 确保您已安装适用于您设备的所有更新。- 安装最新固件或使用最新可用映像刷新设备。即使您已经使用最新版本的 Android,这也会很有帮助,因为无线 Android 升级过程可能会损坏本机调试所需的文件权限。对于许多三星设备,这可以使用 Kies 完成。- 将问题报告给您的制造商。Android 兼容性测试套件“testRunAsHasCorrectCapabilities”针对这种情况进行了测试,可能会失败。

但我的应用程序正在安装在 Android 设备中并且可以启动。

我觉得在 Visual Studio 中开发的 Android 是错误的。我在 C# 中使用 Xamarin Android,它通常运行良好。

有任何想法吗?有人怎么得到同样的错误?

4

1 回答 1

1

之所以会出现这个问题,是因为在您的应用程序中调试本机代码需要运行 gdbserver——一个在 Android 设备上运行的特殊工具,它将您的应用程序的内部结构暴露给调试器。如果您的 Android 设备对 /data/system/packages.list 文件的权限过于严格,run-as 工具将无法读取该文件并以正确的权限启动 gdbserver。VisualGDB 提供了一种解决方法,允许直接从您的应用程序启动 gdbserver 并自动连接到它。打开 VisualGDB 项目属性,进入调试设置页面并选择“启动 gdbserver – 从应用程序手动”</p>

有关更多信息,您可以参考这里

于 2018-10-01T01:14:12.127 回答