Windows Phone或Windows Phone Silverlight

Windows Phone或Windows Phone Silverlight,silverlight,windows-phone-8,visual-studio-2013,windows-phone-8.1,Silverlight,Windows Phone 8,Visual Studio 2013,Windows Phone 8.1,我刚刚安装了Windows 8.1,然后安装了Visual Studio 2013社区版 我尝试创建一个Windows Phone应用程序,发现有两种方法可以创建它(如果我没有错的话,如果算上通用应用程序,事实上是3个) Windows Phone Windows Phone Silverlight 有人能告诉我这两者到底有什么区别吗?我读了几篇文章,但还是不明白,这整件事非常令人困惑 当我试图创建一个Windows Phone Silverlight项目时,它问我是想以8.0还是8.1为目标

我刚刚安装了Windows 8.1,然后安装了Visual Studio 2013社区版

我尝试创建一个Windows Phone应用程序,发现有两种方法可以创建它(如果我没有错的话,如果算上通用应用程序,事实上是3个)

  • Windows Phone
  • Windows Phone Silverlight
  • 有人能告诉我这两者到底有什么区别吗?我读了几篇文章,但还是不明白,这整件事非常令人困惑

    当我试图创建一个Windows Phone Silverlight项目时,它问我是想以8.0还是8.1为目标

    当我尝试创建Windows Phone项目时,它要求我获得开发人员许可证,但没有询问8.0或8.1版


    如果我的目标是为移动设备(平板电脑/手机)创建一个可以在最多运行Windows Phone 8版本的设备上运行的应用程序,那么我应该选择什么呢?

    Windows Phone Silverlight是WP8.0应用程序构建的“旧”平台。它要求您以8.0或8.1为目标,因为WP8.1有一种混合模式,允许您构建WP8.1应用程序,但如果您有大量不想移植的遗留代码,则仍然可以访问Sliverlight API


    Windows Phone是基于Windows运行时的WP8.1(主要)通用平台。

    Windows Phone 8 Silverlight是Windows Phone 8上较旧的UI。WinRT XAML用于Windows应用商店应用程序(这些是通用应用程序)。正如所解释的,WindowsPhone8.1Silverlight有点不同

    Windows Phone Silverlight虽然更老,但在某些方面更好。如果你的目标是开发一个只针对手机的应用程序,而移植到Win8/RT没有任何用处,那么就使用Silverlight。WinRT中的背景音频一团糟。Cortana的语音识别效果更差

    WinRT XAML的控件有缺陷。例如,在WinRT XAML中,
    MapControl
    的性能明显下降,而在Silverlight中,性能下降更为平稳

    另一方面,Windows Store应用程序具有.NET原生,它将C语言转换为本地C++代码,从而获得性能增益。


    对于初学者,我建议从Windows Phone 8 Silverlight应用程序开始。

    这意味着如果我想让我的应用程序在最大设备上运行,我应该在Windows Phone Silverlight中开发它?不,Silverlight是旧平台。它永远不会在平板电脑上运行。你是说在基于Windows 8/8.1的平板电脑或Surface?上运行。要在Windows 8/8.1设备以及手机上运行,你需要以WinRT/8.1 universal app为目标。如果您使用通用应用程序模板,则只能以WinRT为目标,这意味着您的应用程序将在Windows Phone 8.1和Windows 8.1(平板电脑、台式机、笔记本电脑等)上运行;它不会在WP8或更早版本上运行。WP8上仍然有很多用户,但WP7上的用户并不多。如果你想瞄准个人电脑和平板电脑,请选择WinRT universal。如果要仅针对手机,请针对Windows Phone 8或8.1。如果您选择8.1 WinRT是未来的证明选项,它将使您在将来更容易地将端口移植到Windows。的可能副本似乎是副本,但仍然。。。Windows Phone基本上是新平台。8.1之前的Windows Phone版本不支持此功能。Windows Phone基本上是通用应用程序的Windows Phone部分。您可以轻松地将WP转换为通用应用程序(只需单击一下)。如果你想支持旧的WP版本,你需要Silverlight。如果你想支持平板电脑,你需要新的。我建议您使用新的Windows Phone。也可能是重复的:@yasen Ok,但在现阶段使用Windows Phone不会是一个劣势,因为大部分份额由Windows Phone 8而不是8.1持有吗?正如我在上一次对Karthik的回答发表评论时所说,WP8.1拥有50%的份额。当你有一个稳定的工作应用程序时,它会有更多。但这是一个合理的考虑,所以这取决于你。如果你将要做的事情与工作有关(你不是你的老板)——和高级开发人员/项目经理讨论一下。如果没有,我仍然认为你应该选择新的平台。我真的不明白为什么每个人都建议那些刚刚开始使用旧技术的人,这些技术很可能会被及时淘汰,而不是学习新的API和新的平台,这些新的平台也可以在平板电脑和手机上工作(不像旧的平台只用于手机). 因此,我不同意这个答案。我必须同意@yasen的观点,除非你需要一个API:s仅适用于Silverlight,WinRT是更好的选择。我不认为这比Silverlight应用程序更难入门。他有点道理。我制作了一个非常简单的应用程序,我发誓我30%的开发时间都花在了解决映射API中大量严重的bug上。但同样的事情也发生在8.0中;许多人选择使用7.1地图控件,因为8.0是一个巨大的倒退。也许课程是使用[version]-1来制作地图?@yasen@johan falk WP8有
    WebClient
    ,它可以快速下载字符串(可能是json),这对初学者来说很好。WinRT没有
    WebClient
    ,而是
    HttpClient
    ,对于初学者来说,它更难处理,也更复杂。还有一点,在最近泄露的Win10版本中,它运行Windows Phone应用程序(不确定SL或RT应用程序)。。所以,也许WP8 Silverlight应用程序不会消亡immediately@FrankMartin基本正确。如果你想瞄准更多的手机,你可能更喜欢Silverlight。根据11月的统计数据,WP8.1占50%,WP8.0占33%。但是8.1之前的版本越来越不相关。另一方面,如果你想支持平板电脑,可以选择Windows Phone。关于通用应用程序-这是一个有3个项目的应用程序-一个用于手机,与Windows phone项目完全相同,一个用于桌面/平板电脑(使用Windows 8.1),另一个用于在其他两个项目之间共享文件。