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萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章