共用方式為


如何使用通知佇列 (HTML)

[ 本文的目標對象是撰寫 Windows 執行階段 App 的 Windows 8.x 和 Windows Phone 8.x 開發人員。如果您正在開發適用於 Windows 10 的 App,請參閱 最新文件 ]

注意  不是使用 JavaScript?請參閱如何使用通知佇列 (XAML)

 

這個主題顯示如何在磚上啟用通知佇列,本案例使用本機通知。文中也顯示如何先在通知加上標籤再傳送,避免讓重複或過時的內容出現在佇列中。啟用通知佇列時,Windows 最多可循環使用 5 個通知。

若要查看這個快速入門中提供的 C#、C++ 或 Visual Basic 版本的 JavaScript 範例,請參閱如何使用通知佇列 (C#、C++ 或 Visual Basic)

注意  在這個快速入門中,您將直接透過 XML 文件物件模型 (DOM) 來操作通知內容。另外還有透過 NotificationsExtensions 程式庫的選擇性方法,這個程式庫會以物件屬性的形式呈現 XML 內容,包含 Intellisense。如需詳細資訊,請參閱快速入門:在程式碼中使用 NotificationsExtensions 程式庫。若要查看這個快速入門中以 NotificationsExtenstions 表示的程式碼,請參閱應用程式磚和徽章範例

 

您必須知道的事

技術

  • Windows Runtime

先決條件

為了解這個主題,您將需要:

指示

步驟 1: 選擇性:宣告命名空間變數

這個步驟提供您用來取代完整命名空間名稱的簡短名稱。這是 C# 中的 "using" 陳述式或 Visual Basic 中的 "Imports" 陳述式的對等項。讓您將程式碼簡化。

注意  這個快速入門中的其餘程式碼假設已經宣告這個變數。

 


var notifications = Windows.UI.Notifications;

步驟 2: 將選項設定為啟用通知循環功能

此程式碼可為應用程式啟用通知佇列。雖然重複執行呼叫不會有影響,但是應用程式執行時,只需要執行此呼叫一次。建議您將這個呼叫放置在應用程式的初始化程式碼中。這樣可以確保會在您於本機更新磚、要求推播通知通道或是開始磚的定期更新之前執行呼叫。


notifications.TileUpdateManager.createTileUpdaterForApplication().enableNotificationQueue(true);

步驟 3: 建立磚通知

這是所有磚通知的第一個步驟,而且在任何其他情況下都相同;僅基於完整性考量而納入於此。如需詳細資訊,請參閱快速入門:傳送磚更新

注意  在 Windows 8 系統上呼叫 getTemplateContent 時,會傳回第 1 版範本。在 Windows 8.1 系統上呼叫此方法時,如果是僅適用於手機的範本,會傳回第 2 版範本第 3 版範本。但是,如果應用程式在它的資訊清單中指定 Windows 8 相容性,不論 Windows 版本為何,這個方法都會傳回第 1 版範本。在本主題中,我們將使用第 2 版範本。

 


var template = notifications.TileTemplateType.tileWide310x150ImageAndText01;                      
var tileXml = notifications.TileUpdateManager.getTemplateContent(template);

// TO DO: Fill in the template with your tile content. Define a tile and add it to tileXML.

var tileNotification = new notifications.TileNotification(tileXml);

步驟 4: 選用:在通知加上標籤

標籤是不超過 16 個英數字元的字串 (含結束的 Null 字元),可在應用程式內唯一識別通知。

佇列啟用時,最多可以有 5 個磚通知在磚上自動循環。根據預設,佇列中的通知取代原則為先進先出 (FIFO);當佇列已滿又有新的通知送達時,會移除最舊的通知。請注意,通知顯示順序不會遵循嚴格的線性模式。使用者可能看到通知以不同於到達的順序出現。

若要覆寫 FIFO 佇列行為,可以在通知加上標記。如果送達的新通知與現有的通知有相同的標記,無論舊通知在佇列中的哪個位置,新通知都會取代舊通知。例如,如果您的磚是顯示股價,您想要顯示最新的資訊。您可以視需要選擇使用標記來取代佇列中的通知。

如需搭配通知佇列使用標記的詳細資訊,請參閱使用通知佇列。以下範例顯示如何為本機通知設定標記。如需為定期更新設定標記的相關資訊,請參閱Tileupdater.startPeriodicUpdateBatch。如需為推播通知設定標記的相關資訊,請參閱推播通知服務要求和回應標頭

tileNotification.tag = "stockMSFT";

步驟 5: 將通知傳送至磚


notifications.TileUpdateManager.createTileUpdaterForApplication().update(tileNotification);

相關主題

快速入門:傳送磚更新

應用程式磚和徽章範例

磚與快顯通知影像大小

磚與磚通知概觀

磚的指導方針和檢查清單