【问题标题】:Xamarin.Android Projects failed to deploy in visual studio emulator for androidXamarin.Android 项目未能在适用于 android 的 Visual Studio 模拟器中部署
【发布时间】:2016-06-22 04:30:34
【问题描述】:

我在 windows 10 build 10586 TH1 上使用 Visual Studio 2015 更新 1。

我也在使用 Xamarin 版本 4.0.1.96。

我创建了一个空白 Xamarin.Forms 应用程序。 它可以毫无问题地部署到 Windows Phone 模拟器。但无法部署到 Android 模拟器。

当我启动 android 项目 Android Emulator 成功启动,但 Visual Studio 在这一步冻结。

我尝试了很多安卓模拟器配置文件,但都无法解决问题。

此问题仅存在于模拟器和项目成功部署在物理 android 设备上。

我对 Xamarin.Android 项目有同样的问题。

这是输出窗口中的所有文本:

  • 1>开始部署 4.5" KitKat (4.4) HDPI Phone ...
  • 1>启动模拟器 4.5" KitKat (4.4) HDPI Phone ...
  • 1>正在验证模拟器参数...
  • 1>正在确定模拟器是否已经在运行...
  • 1>正在准备虚拟机...
  • 1>正在启动模拟器...
  • 1>模拟器启动成功

提前感谢您的帮助。

【问题讨论】:

  • 你等了多久了?根据我的经验,部署到模拟器可能需要非常非常长的时间
  • @StarterPack 最长20-30分钟左右,我觉得这个不正常。
  • 来自android的模拟器太糟糕了。他们很慢,如果你给他们太多的内存,他们经常会以奇怪的方式失败。我建议在 genymotion 模拟器上尝试这个。他们在他们的网站上有一个免费版本,有点难找,但使用后您将无法返回。
  • 模拟器速度没问题。微软模拟器真的很快。它会在几秒钟内启动。我的问题只是部署我的应用程序以在模拟器中进行调试。
  • 另外,我在我的笔记本电脑上使用这个模拟器没有任何问题。我的台式机和我的笔记本电脑之间的唯一区别是Windows版本。在我的笔记本电脑中,我使用的是 windows 10 build 10586 版本 1511,但我的桌面没有更新。

标签: android xamarin android-emulator xamarin.forms visual-studio-emulator


【解决方案1】:

我在模拟器启动 find 时遇到了同样的问题,但 Visual Studio 在构建/部署时挂起。终于从here弄明白了。

Visual Studio 在尝试将应用部署到模拟器时卡住,或者模拟器在其他 IDE 中未显示为调试目标

如果模拟器正在运行,但它似乎没有连接到 ADB (Android Debug Bridge) 或者它没有出现在 Android 工具中 使用 ADB(例如,Android Studio 或 Eclipse),您可能需要 调整模拟器查找 ADB 的位置。模拟器使用 用于识别 Android SDK 基本位置的注册表项,以及 在该目录下查找 \platform-tools\adb.exe 文件。到 修改模拟器使用的Android SDK路径:

  • 从“开始”按钮上下文菜单中选择“运行”,在对话框中键入 regedit,然后选择“确定”,打开注册表编辑器。
  • 导航到左侧文件夹树中的 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Android SDK Tools。
  • 修改 Path 注册表变量以匹配您的 Android SDK 的路径。重新启动模拟器,您现在应该可以看到 模拟器连接到 ADB 和相关的 Android 工具。

我的注册表中的值设置为“C:\Program Files (x86)\Android\android_sdk”(或类似的)。将它更新到 "C:\Users\{USERNAME}\AppData\Local\Xamarin\MonoForAndroid\AndroidSDK" 为我解决了这个问题。 (我还没有担心如何让所有用户都能使用它。)

【讨论】:

  • 不确定它是否是强制性的,但我还必须在路径末尾添加反斜杠 `\`。
【解决方案2】:

我遇到了同样的问题,但在我的情况下不是注册表。在进行发布构建后,我以发布模式将应用程序部署到模拟器设备,该模式将应用程序推送到设备,然后有效地“断开连接”。这会在设备上留下一个应用版本,这似乎会阻止进一步的调试尝试。

我通过启动模拟器解决了这个问题,转到“设置 -> 应用程序”并手动卸载我的应用程序。然后下一个调试构建和部署再次工作。

【讨论】:

    【解决方案3】:

    我有同样的问题。经过长时间的努力,我修复了它。

    溶胶 1:

    检查其他人提到的注册表。

     **HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Android SDK Tools**
    

    溶胶 2:

    在我的情况下,注册表中没有找到 android-SDK 工具。所以这里要手动添加注册表"**HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node**"

    您可以通过右键单击**Wow6432Node** => **New** => **key** 添加它。

    将Key name设置为**“Android SDK Tools”**然后右键**Android SDK Tools** =>**New** => **String Value**

    为新添加的字符串设置名称为**Path**。然后右键**Path** => **Modify..**

    程序文件中复制Android SDK Tools路径并粘贴到Value Data中。

    现在手动创建注册表。您可以通过模拟器调试项目。

    注意:别忘了重启系统。

    【讨论】:

      【解决方案4】:

      看看这里:

      Xamarin Forms Android App Crashes Running Debug with VS Android Emulator

      1. 启动 Hyper-V 管理器
      2. 选择您尝试使用的模拟器
      3. 右键单击,点击设置
      4. 点击处理器
      5. 点击兼容性
      6. 设置复选框“迁移到具有不同处理器版本的物理计算机”

      笔记本电脑上没有这个问题,因为它的处理器不提供 Android Emulator for Visual Studio 不支持的新功能。仅在具有较新 CPU 的 PC 上需要进行所述调整。

      【讨论】:

        【解决方案5】:

        我通过以管理员身份启动 Visual Studio 解决了这个问题。

        【讨论】:

          【解决方案6】:

          我也对适用于 Android 的 Visual Studio Emulator 感到奇怪,并且 Visual Studio 似乎卡在“部署...”步骤,试图启动应用程序进行调试。 我发现,一旦它开始这样做,重新启动模拟器和视觉工作室似乎会让我的事情变得更好。 此外,在调试应用程序时,与使用“停止调试”按钮相比,退出应用程序通常会有所帮助。 例如,我启动了我的应用程序两次并使用“停止调试”按钮将其终止,但无法在没有重新启动 Visual Studio 和模拟器的情况下第三次部署/启动该应用程序。 我正在使用带有更新 3 的 VS 2015 社区版。

          【讨论】:

            【解决方案7】:

            我刚刚有一个非常有趣的经历,

            在我的情况下,SDK 的注册表路径是正确的,

            我已取消选中“使用快速部署”(在 android 选项中的打包属性下),并且 我重新启动PC,关闭VS,关闭模拟器重新启动的所有努力都失败了。

            但是我做了这两个:

            1 - 更新了android SDK manager中的所有组件并重启了PC,

            2 - 禁用了我的防病毒软件!然后突然VS将应用程序部署到模拟器! (它陷入了模拟器启动并且没有任何反应的相同情况!,我这样做是出于绝望!)

            (操作系统:win 7,专业版,VS 2017 社区版!)


            更多详情

            我已经尝试了三天 对于我的特殊情况,禁用防病毒似乎每次都能解决问题!

            【讨论】:

              【解决方案8】:

              我的解决方案是检查配置管理器中的部署框

              这个答案来自Xamarin Forum

              【讨论】:

                猜你喜欢
                • 2015-09-26
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2017-07-17
                • 2016-12-27
                • 2016-11-06
                • 2017-09-04
                • 1970-01-01
                相关资源
                最近更新 更多