如何计划 Toast 通知 (HTML)
[ 本文适用于编写 Windows 运行时应用的 Windows 8.x 和 Windows Phone 8.x 开发人员。如果你要针对 Windows 10 进行开发,请参阅 最新文档 ]
注意 不使用 JavaScript?请参阅如何计划 Toast 通知 (XAML)。
本主题介绍如何将 Toast 通知安排在特定时间出现。
你需要了解的内容
技术
- Windows Runtime
先决条件
- 了解 Toast 通知术语及概念。有关详细信息,请参阅 Toast 概述。
- 能够使用 Windows 运行时 API 创建使用 JavaScript 的基本 Windows 应用商店应用。有关详细信息,请参阅创建第一个采用 JavaScript 的 Windows 应用商店应用。
- “支持 Toast”选项必须在应用清单中设置为“是”,以便发送或接收 Toast 通知。有关详细信息,请参阅如何接受 Toast 通知。
说明
步骤 1: 指定模板
在指定传递时间前,必须创建通知。
var template = Windows.UI.Notifications.ToastTemplateType.toastText02;
var toastXml = Windows.UI.Notifications.ToastNotificationManager.getTemplateContent(template);
步骤 2: 提供 Toast 通知内容
我们将不会在这里对此进行介绍,因为计划 Toast 和非计划 Toast 的内容相同。有关详细信息,请参阅快速入门:发送 Toast 通知。
步骤 3: 指定应传递 Toast 通知的时间
此示例指定通知应在 3 秒内出现。此示例使用 JavaScript 日期对象检索当前时间。
var currentTime = new Date();
var startTime = new Date(currentTime.getTime() + 3 * 1000);
步骤 4: 创建计划的 Toast 通知对象
发送 Toast 通知内容和计划传递时间至构造函数。
var scheduledToast = new Windows.UI.Notifications.ScheduledToastNotification(toastXml, startTime);
步骤 5: 可选:为计划 Toast 通知赋予 ID
此 ID 不能超过 16 个字符。如果要取消通知,以后可以使用该 ID。
scheduledToast.id = "Future_Toast";
步骤 6: 向计划中添加 Toast 通知。
创建 ToastNotifier 对象,该对象反过来用于向计划中添加通知。
var toastNotifier = Windows.UI.Notifications.ToastNotificationManager.createToastNotifier();
toastNotifier.addToSchedule(scheduledToast);
添加以特定时间间隔重复的 Toast 通知
以下代码显示单个 Toast 通知 5 次,每次相隔一分钟。为清楚起见,省略了模板中要填充的代码。
var template = Windows.UI.Notifications.ToastTemplateType.toastText02;
var toastXml = Windows.UI.Notifications.ToastNotificationManager.getTemplateContent(template);
// TO DO: Fill in the template with your notification content here.
var currentTime = new Date();
var startTime = new Date(currentTime.getTime() + 1000);
var recurringToast = new Windows.UI.Notifications.ScheduledToastNotification(toastXml, startTime, 60 * 1000, 5);
recurringToast.id = "Recurring_Toast";
var toastNotifier = Windows.UI.Notifications.ToastNotificationManager.createToastNotifier();
toastNotifier.addToSchedule(recurringToast);