Windows Phone 8.1应用商店与Windows Phone 8.1 Silverlight

Windows Phone 8.1应用商店与Windows Phone 8.1 Silverlight,silverlight,windows-phone-8.1,Silverlight,Windows Phone 8.1,当我创建新的Windows Phone项目时,我可以选择创建“Windows Phone”或“Windows Phone Silverlight”应用程序。我知道它们有不同的运行时和不同的API。 我的印象是微软想要统一Windows和Windows Phone平台,那么为什么会有Silverlight版本呢?它带来了什么好处? 另外,如果我只想为Windows Phone创建一个应用程序,而且从来没有计划将其带到Windows,那么我应该选择什么,Silverlight还是Windows Ph

当我创建新的Windows Phone项目时,我可以选择创建“Windows Phone”或“Windows Phone Silverlight”应用程序。我知道它们有不同的运行时和不同的API。 我的印象是微软想要统一Windows和Windows Phone平台,那么为什么会有Silverlight版本呢?它带来了什么好处? 另外,如果我只想为Windows Phone创建一个应用程序,而且从来没有计划将其带到Windows,那么我应该选择什么,Silverlight还是Windows Phone?

统一环境将是理想的选择。在我看来,它不是很成功。在某个时间点上,您只能在Silverlight下开发,因此您看到的只是同一事物的更新版本,以保持向后兼容性,并使Silverlight的开发人员感到高兴。在未来,它可能会被逐步淘汰。另外,如果你想支持老式手机,Silverlight基本上是你唯一的选择(你会感到惊讶,有多少WP用户还没有将他们的8.0升级到8.1)

Silverlight确实没有任何其他真正的好处,除了非常有用的
Windows Phone Toolkit
(你可以看到有多少SO的答案依赖于这个简单的插件)。一旦通用运行时变得更加充实,文档反映了实际可用的内容——那么我认为它将成为Windows下开发的默认项目


如果您刚刚开始,我会使用Silverlight,因为基于知识的功能更强大。使用WP环境后,请切换到运行时。

Windows RT Xaml非常新,人们必须首先生成一些知识

Silverlight for phone已经存在多年,有大量可用的工具:电话工具包、各种控件等。 仅仅扼杀它就会伤害到许多长期积累知识产权的开发者,迫使他们重新开始

当使用Silverlight开始一个项目时,您将有更多的事情可以帮助您完成工作

当开始使用WinRT Xaml时,您将获得更好的性能,但必须自己解决很多问题

所以Silverlight选项是为了避免Silverlight开发人员的浪费

我最近在WinRT Xaml上启动了一个新项目,我的经验是,我必须重新创建许多常用工具,如缓存等。但以前工具包中的很多东西现在都是平台本身的一部分。另外,当您转到Windows 8时,您可以共享许多很好的代码。

我建议您使用“Windows Phone”(非Silverlight)。这是新的API,适用于Windows和Windows Phone。在某个时候,您可能想要移植该应用程序或为Windows创建一个新的应用程序,并且您已经了解了API(并且移植将更加容易)。此外,新的API很可能会得到更多的更新和添加的功能,在某些情况下,您甚至可能被迫对其进行更新(要么因为旧API不再受支持,要么因为它没有您需要的某些功能)

正如在其他答案中所说的那样,Silverlight选项只是为了向后兼容而存在的,并且很可能会被及时淘汰。也就是说,如果您已经了解了API,并且有许多WPSilverlight库(您的或其他库),这是很好的,但是如果您刚刚开始,那么最好使用新技术

编辑


在选择这两种应用程序之前,还有另外一件事要考虑。某些功能仅在Silverlight应用程序中可用,而其他功能(数量较少)-仅在Xaml应用程序中可用。这里有一篇文章介绍了这些差异:

我不同意你从Silverlight开始的建议。非SilverlightAPI是通用的,因此应用程序可以很容易地移植到Winodws。此外,正如您自己所说,这是新的API,Silverlight one很可能会被淘汰。为什么要浪费时间学习一个与新API截然不同、有不同问题且很可能被淘汰的旧API?我无法访问WP 8.1(非SL)中的
ApplicationPhoneService
:(我想让我的应用程序在手机被锁定时运行,但因为这个原因无法运行。我所能做的就是阻止它锁定!电池和应用程序体验太差了。