Windows App SDK 中的推播通知會使用 Windows 推播通知服務 (WNS) 使用 Azure 應用程式註冊身分識別將豐富的通知傳送至 Windows 應用程式。
推播通知類型和使用案例
推播通知可用來啟用數個不同的功能。 推播通知的內容和效果會根據使用方式而有所不同。
Raw notifications
原始 通知會由應用程式自行取用,且不會通知用戶。 它們可用來控制應用程式行為,或從遠端通知應用程式狀態變更。
| Scenario | Description | Example |
|---|---|---|
| 應用程式喚醒 | 應用程式開發人員可以使用原始通知來喚醒其應用程式,而不是持續執行,以釋出用戶資源。 |
沒有原始通知:Contoso Chat 應用程式會在等候 VOIP 通話時在背景執行。 使用原始通知:Contoso 應用程式進程可以處於終止狀態,直到原始通知發出訊號並啟動進程為止,表示已起始 VOIP 呼叫。 |
| 即時同步處理 | 原始通知可以藉由允許應用程式開發人員將資料內容從其 App Service 傳送至本機裝置上的 App Client 來取代輪詢情境。 這些有效負載會通知 App Client 與 App Service 進行同步。 |
沒有原始通知:Contoso 聊天應用程式每隔 30 分鐘輪詢 Contoso 雲端服務以檢查內容更新,並在有更新可用時起始同步處理。 使用原始通知:Contoso 聊天應用程式會在有新內容可用時立即收到通知,並馬上同步處理該內容。 |
來自雲端的應用程式通知
應用程式 通知可用來與用戶通訊。 通知內容會顯示在畫面右下角的暫時性視窗和通知中心(稱為 Windows 10 的控制中心)。 應用程式通知可用來通知使用者應用程式狀態或狀態變更,或提示使用者採取動作。 應用程式通知可以是推播(從雲端傳送)或本機傳送。 傳送雲端來源應用程式通知類似於傳送原始通知,但 X-WNS-Type 標頭為 toast、 Content-Type 為 text/xml,且內容包含應用程式通知 XML 承載,您可以 在這裡深入瞭解。
Limitations
Windows App SDK 中的推播通知支援目前有下列限制:
- 如果您的應用程式發佈為 獨立式,或是以提升的(系統管理員)許可權執行,則此功能可能不受支援。 在您的應用程式中,如
winrt::PushNotificationManager::IsSupported()》中所示,進行 檢查;如果不支援此功能,則實作自訂套接字。 - Microsoft保留停用或撤銷應用程式使用推播通知的權利。
Next steps
請參閱 快速入門:在 Windows App SDK 中推播通知 以開始使用。