我刚刚在 Visual Studio 上创建了一个简单的“helloworld”cordova 应用程序。我无法在 android 模拟器或设备上调试我的应用程序,尽管它仅适用于纹波模拟器。请帮忙。
我不断收到错误“无法启动 mypathname/adb.exe”
在cmd中尝试了adb kill-server和adb start-server(结果:服务器重启成功)
安装了必要的移动驱动程序并升级了我的驱动程序
配置为在开发人员选项下设置允许 USB 调试
检测并显示设备
我刚刚在 Visual Studio 上创建了一个简单的“helloworld”cordova 应用程序。我无法在 android 模拟器或设备上调试我的应用程序,尽管它仅适用于纹波模拟器。请帮忙。
我不断收到错误“无法启动 mypathname/adb.exe”
在cmd中尝试了adb kill-server和adb start-server(结果:服务器重启成功)
安装了必要的移动驱动程序并升级了我的驱动程序
配置为在开发人员选项下设置允许 USB 调试
检测并显示设备
您使用的是哪个 Android 版本?Visual Studio & Cordova 似乎有一个已知问题,说
将 VS 调试器与 Android < 4.4 模拟器、设备或 Apache Ripple™ 一起使用时: 在对 Android 版本 <4.4 的设备进行调试时,会弹出错误消息“无法启动程序”,并引用“adb.exe”作为原因。该应用程序仍应在您的设备上加载并运行,无需调试器支持。
并且状态似乎是No fix available。
转到构建/配置管理器并检查您是否选择了调试配置而不是发布。
假设 adb 在您的路径中(否则 CD 到正确的路径),adb devices
从命令行尝试,看看您是否列出了多个设备。
如果是这样,请检查您是否有其他模拟器正在运行 - 例如 blustacks,然后关闭/杀死这些并重试。
如果不使用 jsHybugger 之类的第三方插件,则无法将 VS 调试器用于部署到模拟器或运行 Android 4.4 之前版本的设备的应用程序。但是,JavaScript 控制台输出会在“输出”窗口中捕获。
在调试 4.4 之前的 Android 版本的设备时,错误弹出窗口可能会显示错误“无法启动程序”,并引用“adb.exe”作为原因。该应用程序仍应在您的设备上加载并运行,无需调试器支持。
在做了更多研究之后,我在谷歌上发现了这个线程,事实上浏览器也会显示错误Unexpected token ILLEGAL
以指示通常偶然出现的不可见字符等,这足以让我认为你有 UNIX 样式的行更改Visual Studio 不能容忍。
在 Windows 上解决这个问题并不容易,但你可以在这里下载 unix2dos (我知道它看起来很可疑,但这里的 ServerFault 上的 110k 用户推荐它)并使用它来转换该项目中的所有文件。您还可以从其他来源获取基础项目,例如GitHub 上的 Apache Cordova Hello World Application。
AppGyver 的Steroids 工具可在 Windows 上运行,并为您提供对 Chrome Inspector 的增强访问权限,以调试 WebView 中发生的事情,因此您不一定需要依赖 Visual Studio 的调试工具。
您可以直接在您的 Cordova 项目中运行 Steroids,而无需修改任何文件。
(免责声明:我是 AppGyver 的程序员。)
以管理员身份运行 Visual Studio 解决了这个问题。