我创建了一个新的、简单的 Xamarin 跨平台应用程序,在使用 Marshmallow(6.0 API 23)的 VS 模拟器中运行 Android 项目时出现以下错误:
等待运行时检查完成
模拟器成功启动,项目构建没有警告或错误。我已经让它在一夜之间保持这种状态,但它无法超越这一点。
- VS:15.7.1
- Xamarin 形式:3.0.0.482510
任何方向/建议将不胜感激。
编辑 1:使用 Android SDK 映像有效,因此问题似乎出在 Hyper-V VM 上。
我创建了一个新的、简单的 Xamarin 跨平台应用程序,在使用 Marshmallow(6.0 API 23)的 VS 模拟器中运行 Android 项目时出现以下错误:
等待运行时检查完成
模拟器成功启动,项目构建没有警告或错误。我已经让它在一夜之间保持这种状态,但它无法超越这一点。
任何方向/建议将不胜感激。
编辑 1:使用 Android SDK 映像有效,因此问题似乎出在 Hyper-V VM 上。
您需要重新启动 ADB 服务。Visual Studio-Service-Android-重启adb服务。它对我有帮助。
在菜单栏中的 Visual Studio 中:Tools -> Android -> Restart Adb Server
我通过执行以下步骤设法解决了这个错误:
>>
右侧工具栏中的箭头。adb connect [IP_FROM_STEP_#4]
。您应该只需要在每次启动模拟器时执行此操作。它并没有解决 VS 无法自动连接的问题,但我发现它很容易继续进行。
附带说明,如果应用程序运行并立即退出,请执行以下操作:
查看@masound 提供的链接后,我发现注册表项丢失了。所以,我做了以下事情:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node
.Path
和 value的字符串值C:\Program Files (x86)\Android\android-sdk
。我遇到了同样的问题。花了几个小时试图修复它。尝试了以上所有答案均无济于事。打开 Android 设备管理器并在我所有的模拟器上进行了出厂重置。它解决了这个问题。
在此链接中,有一些针对 VS android 模拟器的问题修复。其中之一是关于 adb 无法连接到模拟器的问题。这是由于模拟器指向的 adb 路径与 Visual Studio 使用的真实 adb 路径之间的差异造成的。此冲突可能是由更新 Visual Studio 或其组件引起的。简单而永久的解决方案是更改模拟器指向的路径。只需执行以下操作:
我遇到了这个。重新启动机器和设备。现在一切都好。
我在使用 Pixel 2 Pie 8.1(API 27) 时遇到了同样的问题,我下载了它的更高版本 Pixel 2 Pie 9.0(API 28),所以它已经解决了这个问题。
在模拟器上卸载应用程序并重新启动模拟器。
这似乎是为我做的事情。我在一个带有 HAXM 的 Android 6 模拟器上。我也尝试过禁用Use Shared Runtime
,Use Fast Deployment (debug mode only)
其中xamarin.android > properties > android options
过去可能有帮助,但我认为这次没有帮助。...它也可能会重新启动我的计算机七次,然后打开 hyper-v,然后再关闭,windows features
但谁知道呢。
因此,就我而言,在 Visual Studio 安装自己的之前,我使用了另一个 Android SDK 安装。我还将环境变量ANDROID_SDK_ROOT
和ANDROID_SDK_HOME
环境变量设置到不同的文件夹。
为了解决这个问题,我首先将ANDROID_SDK_ROOT
环境变量更改为使用 VS 配置的路径(VS 安装 Android SDK 的位置,请参阅 参考资料Tools -> Options -> Xamarin -> Android Settings -> Android SDK Location
),就C:\Program Files (x86)\Android\android-sdk
我而言。之后需要重新启动 VS,因此它会加载新的环境变量值。
仅凭这一点还不足以让 VS 通过 ADB 成功连接到 AVD。原因是,.android
我的路径下的目录ANDROID_SDK_HOME
仍然包含我之前安装的旧文件adbkey
和adbkey.pub
文件。因此,我将它们替换为 VS 安装的 SDK 中的那些(在我的情况下位于C:\Users\<UserName>\.android
)。(只是删除旧文件可能也足够了,但我还没有测试过。)
之后,VS 能够再次连接到 AVD。