我希望每次用户打开“开始”屏幕时更新我的应用程序的事件磁贴,因为它的事件磁贴功能“仅”可视化(不需要在锁屏上或执行特定逻辑 例如背景)
在 Windows 应用商店中,您可以找到“ watch ”应用,该应用会通过其应用动态磁贴在开始屏幕上向您显示时间,通常以每分钟为单位,而不是更多。这对我来说是完美的。
这些应用程序似乎有比那些著名的 15 分钟更精确的时间间隔,并且它们确实作为后台任务运行(这些应用程序请求许可)。
那么每 15 分钟实际上发生了什么?为什么这些图 block 不受这 15 分钟间隔的限制?我听说他们可能会使用通知队列,但他们仍然需要每 1 分钟更新一次...
非常感谢您的帮助!
最佳答案
您可以使用 TileUpdater.addToSchedule安排up to 4096 notifications .所以,我想一种方法是:
- 设置维护任务以在某个时间间隔运行(不需要 为此在锁定屏幕上)。
任务运行时:
2a。清除您的通知队列。
2b。安排一堆通知,一个现在 + 1 分钟,一个 for now + 2 minutes, etc (register less than 4096, and don't 注册比你真正需要的更多)。
您的维护任务可以安排为每天运行,但您可以安排 2 天的通知,以防它没有及时运行。
这样做的主要缺点是,如果用户使用电池供电超过 2 天(或者无论您安排的时间有多长),您的通知将停止,直到它们插上电源并且允许您的维护任务运行。
如果您不需要每分钟更新一次,则可以将它们安排在更远的 future (即一周或更长时间,如果您每 5 分钟更新一次)。
关于javascript - 如何在 JS/HTML/CSS 中每分钟以可视方式更新 Windows 应用商店应用程序的动态磁贴?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16238626/