为什么Visual Studio TACO无法找到我想要调试的应用程序?
我正在使用在Mac上并行运行的visual studio。 Mac用作iOS的构建服务器。 我正在尝试从visual studio为模拟器(iPad Air iOS 9.3)和实际设备(实际的iPad Air)进行调试。 现在,首先关注模拟器可能会有所帮助。
当我尝试从visual studio或实际设备启动到模拟器(iPad Air)时,我的应用程序在设备或模拟器上启动,之后visual studio似乎挂起了一会儿,最终报告以下错误消息:
我们无法找到您尝试调试的应用。 检查>设备是否已连接,已唤醒和已解锁。 此外,请确保已启用Web> Inspector。
设备已连接。 在模拟器的情况下,没有设备可以连接。
该设备处于唤醒和解锁状态。 在模拟器的情况下,没有什么可以唤醒或解锁。 应用程序启动,而visual studio在返回错误消息之前仍在调试。
我已经检查并仔细检查,以确定在Mac上的设备和内部safari上都启用了Web检查器。 我能够从XCODE运行构建并通过Safari进行调试。
在visual studio返回之前,应用程序实际上在模拟器中打开并且无法找到应用程序的错误,这似乎是不寻常的。 如果visual studio无法找到该应用程序,那么为什么它会启动?
我将非常感谢任何帮助。
环境[更新]
我正在使用在Parallels中运行Windows 10的MacBook Pro。
Windows配置
- Visual Studio 2015 Update 2
- cordova6.1.1
- TACO更新8.1
- 节点6.0.0
MacBook Pro配置
- cordova6.1.1
- 节点6.0.0
- iPad Mini 2运行iOS 9.2(13C75)
- iPad Air 2运行9.2.1(13D15)
更新1:我已经安装了visual studio update 2并仍然收到相同的错误消息。 我很欣赏这个建议!
更新2:感谢您的建议。 我编辑了配置,更改了超时设置,并按照建议重新启动了构建服务器。 附加到实际设备的错误已更改为具有相同结果的警告。 模拟器保持相同的错误。
现在警告说:
超时启动应用程序。 检查您与mac的网络连接,然后再次尝试>。 如果要启动设备,请确保已启用Web Inspector>。
我确实启用了Web检查器。 在返回错误或警告之前,似乎视觉工作室没有等待整整一分钟。 此外,Visual Studio环境在尝试连接到设备或模拟器时似乎挂起(没有响应)。
我也尝试过多个网络并获得相同的结果。
我可能提供的任何其他信息可能有所帮助吗?
更新3:
我可能提供的任何其他建议或其他信息? 我真的很难过。 幸运的是,这不是一个showstopper,因为我可以在部署到设备时在safari中进行一些调试,但这令人沮丧。
尝试连接到设备进行调试时,visual studio是否通常会挂起?
我也不相信visual studio正在等待已配置的超时设置的整个持续时间。
我已经更新了我能够想到的所有依赖项,并确保了cordova版本在ios和windows上匹配。 我在这里难过……
我将Windows 10 VM可用的内存量从4GB增加到5GB,调试器现在按预期附加而没有错误。
我发布此事件对其他人有帮助。
您所看到的可能是remotebuild工具超时的结果,这可能由于各种原因(包括一般网络性能)而发生。 看一下下一个post的答案( Apache Cordova / Visual Studio 2015工具无法在IOS模拟器中启动应用程序 )获得一些指导:如何更改超时
- 首先在
macos
terminal
运行remotebuild saveconfig
- 从上一步的路径打开
Text Editor
的RemoteBuild.config
文件- 将
appLaunchStepTimout
值更改为60000(1分钟)- 将
emulatorLaunchTimeout
值更改为60000(1分钟)- 保存文件
- 在终端上运行
remotebuild
- 再次从
Visual studio
运行该项目
我偶尔遇到同样的错误,但最新的VS 2015,Update 2 TACO Update 8.1已经发生了很多 – 如果你可以更新到那个级别( VS2015 Update 2 ),它可能会为你解决问题。
我仍然偶尔会在更新2中看到此错误。但是,它通常发生在非增量(完整)iOS版本上,并且似乎与时序相关。 更新2修复了许多问题,所以我建议你升级。
编辑2:这个问题再次表现出来,所以它不是一个明确的解决方案,但它现在大部分工作正常。
编辑:我已从设置 – >常规 – >重置 – >重置所有设置重置iPad设置,现在它似乎工作。
我在iPad 1上测试时遇到了完全相同的问题,但它可以在我的iPhone 6上运行。它们都在运行iOS 9.我没有任何其他iOS设备可以测试,所以我无法得出任何确切的结论由此。
我遇到了和你一样的问题。 我只是试图从调试更改为发布,一切都解决了。 我可以做调试。 这是奇怪的解决方案,但在错误上它说,它不能只是调试,所以这就是为什么我想到这一点。