推送通知概述

Windows 应用 SDK中的推送通知使用 Windows推送通知服务(WNS)使用Azure 应用注册标识向Windows应用发送丰富的通知。

推送通知类型和使用方案

推送通知可用于启用多个不同的功能。 推送通知的内容和效果因使用方式而异。

原始通知

原始通知由应用本身使用,不会传达给用户。 它们可用于控制应用程序行为或远程通知应用程序状态更改。

Scenario Description Example
应用程序唤醒 应用开发人员可以使用原始通知来唤醒其应用程序,而不是持续运行,从而释放用户资源。 没有原始通知:Contoso Chat 应用在等待 VOIP 呼叫时在后台运行。

使用原始通知:Contoso 应用进程可以处于终止状态,直到原始通知发出信号并启动进程,表示已启动 VOIP 调用。
实时同步 原始通知可通过允许应用开发人员将有效负载从其应用服务发送到本地设备上的应用客户端来替换轮询方案。 这些负载通知应用客户端与应用服务进行同步。 没有原始通知:Contoso Chat 应用每 30 分钟轮询 Contoso 云服务以检查内容更新,并在更新可用时启动同步。

使用即时通知:当新内容可用时,Contoso 聊天应用会马上收到通知,并立即同步该内容。

来自云的应用通知

应用 通知用于与用户通信。 通知内容显示在屏幕右下角和通知中心(称为Windows 10的操作中心)的暂时性窗口中。 应用通知可用于通知用户应用程序状态或状态更改,或提示用户采取措施。 应用通知可以是推送(从云发送)或本地发送。 发送来自云的应用通知类似于发送原始通知,不同之处在于 X-WNS-Type 标头是 toast,Content-Type 是 text/xml,并且内容包含应用通知 XML 有效负载(有关详细信息,请参阅此处

Limitations

Windows 应用 SDK中的推送通知支持目前具有以下限制:

  • 如果应用发布为自包含应用,或者使用提升的(管理员)特权运行,则不支持此功能。 在应用中,使用快速入门:Windows 应用 SDK 中的推送通知中演示的 winrt::PushNotificationManager::IsSupported() 检查,并在不支持该功能时实现自定义套接字。
  • Microsoft保留禁用或撤销使用推送通知的应用的权利。

后续步骤

请查看 Quickstart: 在 Windows 应用程序 SDK 中使用推送通知以开始了解相关内容。