Visual Studio Xamarin.UITest: "System.Exception : Android SDK not found." 运行 UITests

Visual Studio Xamarin.UITest: "System.Exception : Android SDK not found." running UITests

我正在尝试为我的项目设置一些 UITest,但在 运行 设置它们时收到错误消息:

System.Exception : Android SDK not found. Please install it and if it is still not located, please set the ANDROID_HOME environment variable to point to the directory.

Searched locations: 
Windows Registry
(No path) - Not set. [ Source: ANDROID_HOME ]
   at Xamarin.UITest.Shared.Dependencies.AndroidSdkFinder.GetTools()
   at Xamarin.UITest.Shared.Android.DefaultAndroidFactory.BuildExecutor(IProcessRunner processRunner)
   at Xamarin.UITest.Android.AndroidApp..ctor(IAndroidAppConfiguration appConfiguration, IExecutor executor)
   at Xamarin.UITest.Configuration.AndroidAppConfigurator.StartApp(AppDataMode appDataMode)
   at project.UITest.AppInitializer.StartApp(Platform platform) in C:\Users\Jason\source\repos\project\project.UITest\AppInitializer.cs:line 16
   at StarTracker.UITest.Tests.BeforeEachTest() in C:\Users\Jason\source\repos\project\project.UITest\Tests.cs:line 25

当我 运行 我的项目处于调试模式时,模拟器加载没有问题,所以 Visual Studio 肯定知道我的 Android SDK 在哪里。从另一个 post 的另一个 IDE,我添加了“ANDROID_HOME”变量并将其指向 C:\Users\Jason\.android\C:\Program Files (x86)\Android\android-sdk\,但收到相同的错误。

如果模拟器已经 运行ning,或者如果我依赖 UITest 来启动模拟器,就会发生这种情况。

如何修复此错误?

做一些进一步的研究,我在 Microsoft Visual Studio 页面上发现了以下 post,它在 运行 UITest 时明确调用了 SDK not found 错误:https://www.360logica.com/blog/how-to-set-path-environmental-variable-for-sdk-in-windows/ .完成这些步骤后,我不得不重新启动计算机(重新启用环境变量而不重新启动的命令无效)。

重新启动后,我开始收到 JDK 未找到错误。为此,我找到了 https://www.codejava.net/java-core/how-to-set-java-home-environment-variable-on-windows-10,这基本上是相同的步骤,只是从 Visual Studio.

指向 Microsoft JDK

再次重启让我可以开始我的 UITesting。

我需要删除的案例:

~/.config/xbuild/monodroid-config.xml

格式不正确。

有时这些似乎没有在安装 VS 的过程中设置。您可以在工具->选项->xamarin 设置下获取这 2 个值,并获取您的 android SDK 和 Java 位置:

然后设置系统变量:

您只需要重新启动 VS HTH