Silverlight 8.1 关键变化

对比 Windows Phone 8 apps ,Sliverlight 8.1 apps 的主要变化有以下几点:

1、异常处理

将 app 升级到 Sliverlight 8.1 后可能会出现运行时错误。部分 API 可能会抛出潜在的错误,若没有将涉及的代码放在 try 中,则可能会是引起运行时错误的源头。

2、Sliverlight 8.1 apps 与 Windows Store apps 不同,用户使用 back 键会使该 app 终结,这点与 Windows Phone 8 apps 一样。

3、当重新启动一个 app 时,Sliverlight 8。1 和 Windows Store 一样,会恢复该 app 的实例。而在 Windows Phone 8 中,则会为该 app 生成一个新的实例替代任何已经存在的实例。

4、若在 Windows Phone 8 app 中为磁贴提供本地文本,则在升级为 Sliverlight 8.1 app 的时候,如果继续使用 Microsoft Push Notification Service 框架,则推送服务会正常工作;否则本地文本将无法在磁贴中显示。

5、与 Windows Phone 8 一样,若 WinRT 组件使用托管代码, Sliverlight 8.1 则无法使用;但它们都支持原生的 WinRT 组件。

6、在 Sliverlight 8.1 中,必须在 WMAppManifest.xml 文件中声明 DefaultTask ,指明 app 初始化时的显示页面;而在 Windows Phone 8 中,这是可选的。

7、Windows Phone 8 会在 WMAppManifest.xml 文件中声明 app 对屏幕分辨率的支持,而 Windows Phone Store 会将不合适的 app 隐藏掉。在 Sliverlight 8.1 中没有类似的支持。

8、Sliverlight 8.1 app 需要在 Package.appxmanifest 文件中声明 Picture Library capability 以访问 KnownFolders.CameraRoll。

9、Windows Phone 8 中不会完全禁止 XNA,但在 Sliverlight 8.1 中,app 不可使用 XNA。

10、在 Windows Phone 8 中,会使用 MemoryManager.ProcessCommittedBytes 声明 app 对内存的使用;而 Sliverlight 8.1 是通过 Windows.System.MemoryManager 属性去管理 app 的内存使用的。

11、对象通过声明变量初始化静态域时,必须显示提供一个静态构造器。

12、与 Windows Phone 8 不同,Sliverlight 8.1 运行在前台的 app 是在 Single-Threaded Apartment 中运行的,而后台任务则保持使用 Multi-Threaded Apartment。


发布了22 篇原创文章 · 获赞 4 · 访问量 3万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章