android - 带有 Visual Studio 的 Xamarin 未检测到模拟器的 CPU/ABI 系统镜像,即使系统镜像已安装

标签 android visual-studio xamarin visual-studio-2017

我将 Xamarin 与 Visual Studio 2017 结合使用,但在让模拟器使用 API 版本 25 时遇到了很多问题。

我安装了系统镜像,但模拟器管理器没有检测到它们来设置 AVD。

以下是部分截图: Android SDK Screenshot, all images are installed

Android Emulator Manager Screenshot, cannot detect CPU/ABI system image

我已经尝试重新安装 visual studio 和 xamarin,重新安装 sdks,修复 visual studio,重新安装一切,等等。怎么办?

最佳答案

@Jon Douglas 已经给出了答案,我只是发布一个更详细的答案,以帮助有同样问题的人。

Xamarin with Visual Studio not detecting CPU/ABI system image for emulator, even though system images are installed

正如 Jon Douglas 所说,最好升级到最新的工具,因为 Google 最近弃用了这些旧的 GUI 程序。这里有两个解决方案来解决您的问题。

解决方案 1:

我建议您尝试安装 Android Studio您可以共享已安装的 Android SDK,这样它就不会再次下载

    1. 安装 Android Studio ,Android 的官方 IDE。
    1. 创建一个空白项目并将其打开。
    1. 更改 Android SDK 路径。
      • 一个。转到文件 -> 项目结构
      • b。将 SDK 位置更改为您的 Visual Studio SDK 位置
        • 我。默认的 Xamarin Android SDK 位置是 C:\Program Files (x86)\Android\android-sdk,你可以在 VS 中找到它:Tools -> Options -> Xamarin -> Android Settings
        • 二。更改SDK位置时出现问题:cannot contain whitespace .您可以以管理员身份打开 CMD 并键入:mklink/J C:\Program-Files-(x86) "C:\Program Files (x86)",例如 this .
        • 三。然后您可以更改 SDK 位置,effect .
    1. 在 Android Studio 中,转到:Tools -> Android -> AVD Manager -> Create Virtual Device,查看是否可以使用您已安装的系统镜像创建虚拟设备。

解决方案 2:

尝试使用新的 AVD 管理器:Xamarin Android Device Manager .

更新:

What tools in particular?

我的意思是最新版本Xamarin Android Device Manager .

enter image description here

Android SDK Tools 版本 26.0.1 开始,Google 已经取消了对其基于 UI 的 AVD 和 SDK 管理器的支持,转而支持其新的 CLI(命令行界面) 工具。

由于此更改,您必须使用 Xamarin SDK ManagerXamarin Android Device Manager当您更新到 Android SDK 工具 26.0.1 及更高版本时(这是 Android 8.0 Oreo 开发所必需的)。

关于android - 带有 Visual Studio 的 Xamarin 未检测到模拟器的 CPU/ABI 系统镜像,即使系统镜像已安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48289125/

相关文章:

android - Google Play 服务的 Firebase 分析已过时

c# - 无法在 Xamarin 表单的 Release模式下构建解决方案

c# - Xamarin Mac FFmpeg 启动路径无法访问

c# - 你如何从 xamarin 中的绝对 NSURL 加载文件

android - 什么是 setDisplayOrientation() 的 Camera2 API 等效项?

android - 如何在 android 上使用 retrofit2 和 rxjava2 发出多个请求?

android - 旋转后从地面叠加层获取西北经纬度

c# - 该应用程序缺少必需的文件

c# - 尝试重建Windows窗体的解决方案时出错

visual-studio - 在 Visual Studio 生成后事件 : Access is denied 中复制文件