当我创建新的Windows Phone项目时,我可以选择创建“Windows Phone”或“Windows Phone Silverlight”应用程序。我知道它们具有不同的运行时和不同的API。
我原本以为微软想统一Windows和Windows Phone平台,那么为什么还会有Silverlight版本?它有什么好处?
另外,如果我只想创建一个仅针对Windows Phone的应用程序,而且从未计划将其带到Windows上,我应该选择Silverlight还是Windows Phone?
在选择两种类型的应用程序之前,还有一件事需要考虑。一些功能仅在Silverlight应用程序中可用,而其他功能(数量较少)仅在Xaml应用程序中可用。这里有一篇文章介绍了它们之间的区别:将Windows Phone 8应用迁移到Windows Runtime XAML应用
统一环境是理想的。但在我看来,它并不成功。曾经只能在Silverlight下进行开发,现在你看到的只是同样东西的新版本,以保持向后兼容性并让Silverlight的开发人员满意。未来,它可能会被逐步淘汰。此外,如果您想支持旧手机,Silverlight基本上是您唯一的选择(您会惊讶地发现有多少WP用户没有将8.0更新到8.1)。
Silverlight除了Windows Phone Toolkit
(这个简单的插件非常有用,可以看到有多少SO答案依赖它)之外,实际上没有其他真正的好处。一旦通用运行时得到充分发展,文档反映出实际可用的内容,那么我认为它将成为未来在Windows中开发的默认项目。
如果您刚开始学习,我建议使用Silverlight,因为知识库更大。熟悉WP环境后再切换到运行时。
ApplicationPhoneService
:( 我希望我的应用程序在手机锁定时能够运行,但由于这个原因无法实现。我只能阻止手机锁定!这对电池寿命和应用体验非常不利。 - J86