设置Win8定期磁贴通知的到期日期并续订通知通道

时间:2012-08-13 09:38:52

标签: notifications windows-8 microsoft-metro windows-runtime

我(仍在)使用WIn8-UI-App(以前称为Metro ...),我实现了定期平铺更新。 (在您的帮助下,请参阅this post。)

我有两个跟进问题:

  1. 如何设置周期性图块的到期日期?正如在documentation中所写,我必须提供通知的HTTP响应消息的X-WNS-Expires标头。消息是XML-(tile)文件。如何添加到期日期(示例)?

  2. 当我阅读一些教程和文档时,我读到通知服务(更新磁贴的abonnement)永不过期。在sample code (by MS)中我读到它会在30天后过期,每当应用程序启动时我都应该更新它,并且我应该考虑使用后台任务。现在是什么,我应该怎样做我的应用程序,可能每两个月只使用一次(但通知图块必须是整个时间)?

  3. 感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

您为定期通知指定的端点需要提供XML内容并设置X-WNS-Expires标头(可能还有X-WNS-Tag)。例如,如果您使用Windows Azure blob存储或Amazon S3来托管模板XML并将该URI发送到startPeriodicUpdate,那么您就没有机会设置这些标头。您需要设置一个轻量级服务,该服务通过XML内容正确设置标题。

30天是指推送通知通道,而不是定期通知注册,它只是在您指定的任何时间间隔内轮询的URI。在您致电stopPeriodicUpdate之前,将检查该URI;见Periodic Notification Overview

  

轮询继续,直到您明确停止或卸载您的应用为止。否则,即使您的应用从未再次启动,Windows也会继续轮询您的磁贴或徽章的更新。

最后,Guidelines and checklist for periodic notifications 建议:

  

每次启动或启动应用程序时,请调用StartPeriodicUpdate或StartPeriodicUpdateBatch方法。这可确保每次用户启动或切换到应用程序时都会更新切片内容。