推送通知概述

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

推送通知类型和使用场景

推送通知可用于启用若干不同的功能。 推送通知的内容和作用将因其使用方式而异。

原始通知

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

方案 说明 示例
应用程序唤醒 应用开发人员可通过原始通知唤醒其应用程序,而不是让应用程序一直运行,从而释放用户资源。 不使用原始通知:Contoso Chat 应用在后台运行,同时等待 VOIP 调用。

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

使用原始通知:当有新内容时,Contoso Chat 应用会立即收到通知,并立即同步该内容。

来自云的应用通知

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

限制

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

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

后续步骤

要开始使用,请参阅快速入门:Windows 应用 SDK 中的推送通知