我无法弄清楚如何从Visual Studio 2015运行Win8.1模拟器。
我正在运行Win10周年纪念版。 我还使用所有服务包运行Visual Studio Community 2015。
是的,我看到[下载新的模拟器...]选项,但它不是非常有用,因为它会带您进入具有大量选项的网页,并且它们不是非常具有描述性。 当您单击它时,它将带您: https://developer.microsoft.com/en-us/windows/downloads/sdk-archive
有谁知道我应该选择哪个选项来获取Win 8.1模拟器?
我猜它是这个,但它是解释中的旧版本(它的下载量为881MB):
此外,这是应该安装的项目。我根本没有看到提到的模拟器......
任何其他方式
还有其他方法可以确定我的UWP是否能在Win8.1上正常运行吗?
修改
部署Win 10有很多问题?赢得8.1应用程序。众多。 这就是为什么 troll 在没有评论的情况下对这个问题进行投票的原因?非常无益,巨魔。
我在2013年一直在编写我的应用程序(无论微软称之为什么)UWA? 这完全针对Win8.x。然后,我阅读了UWP文件,并确定我应该写为UWP( UNIVERSAL ,微软,我不认为你明白这个词是什么意思)。
Visual Studio 2013 Win8.x版本不想在Visual Studio 2015中正确构建和运行。
想要确保Win8.x用户也可以运行我的应用程序
是的,微软,仍然有人在运行Win8.x. 我还在Visual Studio 2015中将应用程序构建为UWP,但我希望我的应用程序也能为Win8.x用户运行。你知道,我实际上是在尝试制作我的应用程序。
Visual Studio 2015构建Win8.1应用程序
我接受了回答这个问题的人的建议并开始构建Win8.1版本。我可以使用Studio 2013和2015。我可以在win10上构建并运行win8.1版本,所以我试图在Win8.1设备上运行它 - 任何东西! 我尝试这样做,Visual Studio 2015告诉我需要下载SDK。 好的,Visual Studio,我会这样做。
然后当安装完成并重新启动时,我尝试在8.1模拟器上运行它。不是。在微软的有限智慧中,他们最终在Win10模拟器上运行它。
赢取8.1模拟器?迷幻!
当我选择以下内容时 - 它清楚地显示了Win8.1 - 然后它在Win10模拟器上运行
哦,好吧,也许我做出了错误的选择......即使它说Win8.1。 我们选择一个特定的8.1手机模拟器吗?
当您尝试使用该选项在Visual Studio 2015中构建时,您会收到以下错误:
是的,这是正确的,微软。我没有Win 8 x64 Professional。这是因为当我尝试将此应用程序编写为UWP时,您强制升级到Windows周年纪念版以进行Win10开发。
支持两种不同版本的应用
微软是如此分散,没有任何作用。我会想出来并创建我的解决方法,这可能意味着支持两个不同版本的应用程序。那样就好。但是,微软(和其他无名巨魔(可能是MSMVP)?表现得不像这个问题有明显的答案。
祝所有陷入困境的人好运。
编辑2 关于提到的事情还有一件事:
有意义的是,新API与旧操作系统不兼容,确实如此 到处都是这样做的。
这确实有道理。我也是Android开发人员和iOS开发者,所以我使用Android Studio和XCode开发应用程序并定位各种硬件,所以我想对此发表评论。 实际上,这是真的。例如,您可以使用可能不再受支持的旧API或以前版本的Android上无法使用的新API。
要点
然而,重点是Android允许您:
很容易知道何时发生这种情况
轻松测试各种硬件模拟器,以便您了解
有更好,更全面的文档。
真的,XCode也是如此。 很明显,微软在不知道他们的目标是什么的情况下就跳进了这个想法。急于上市。
答案 0 :(得分:7)
您无法在Windows 8.1模拟器或Windows Phone 8.1模拟器上测试UWP应用程序,因为UWP应用程序不向后兼容Windows 8.1。
UWP应用仅在Windows 10上运行,因此您只能支持升级到此版本操作系统的设备。
要同时定位Windows 10和Windows 8.1,您需要构建Windows 8.1应用程序而不是UWP应用程序。当您的项目是Windows Phone 8.1应用程序时,Windows Phone 8.1模拟器将在“调试”菜单中可用。
通用Windows API在它到达这个真正的普遍点之前经历了许多变化。
有一个非常有用的时间表,有助于理解这一点:
正如您所看到的,融合需要进行大量的改进,以便将所有单独的操作系统整合到一个统一的Windows Core和统一编程模型中。
Windows 8.1运行时API和UWP API之间的变化并不大,但重点是,它必须是一个重大变化才能过渡到最终目标,即Windows 10。
Windows 10是最新版本的Windows 。这意味着,您今天构建的应用程序绝对是通用的并且支持前进。新模型不仅可以针对多种不同的设备外形(在自适应设计的帮助下),还可以针对一系列不同版本的操作系统。
使用 version adaptive code 的概念,您可以使用简单的if
语句在使用之前查看特定功能或API是否可用:
// Check for presence of type MediaPlayerElement.
if (ApiInformation.IsTypePresent("Windows.UI.Xaml.Controls.MediaPlayerElement"))
{
mediaControl = new MediaPlayerUserControl();
}
else
{
mediaControl = new MediaElementUserControl();
}
这样做的最大好处是您始终可以定位最新的API,但在单一代码库中保持对旧版本的支持,而不需要任何“黑客”。您可以为特定设备的特定版本,特定输入微调您的代码,并为其命名。
我实际上认为自适应代码的Windows 10实现优于with Android now。通过将 Roslyn 集成到Visual Studio中,可以改善这一点,它允许 PlatformSpecific.Analyzer 等自定义分析器您知道何时使用不受支持的API,甚至能够使用条件自适应代码if
语句 修复您的代码。
走到这里是一条艰难的道路,但从现在开始,对我们的开发人员来说,这一切都会好得多。