发送推送通知,从应用程序内部更改标题

Sending push notifications to change a tile from inside the App

本文关键字:内部 标题 应用程序 通知      更新时间:2023-09-26

我有一个应用程序,这是一个"仓库"的很多引用和格言;我想改变我的应用程序的瓷砖,例如每5秒,通过从我的应用程序随机发送一些格言!

有可能吗?或者我必须支付Azure之类的服务器服务?在这种情况下,是否存在免费的东西?

你可以直接在你的应用程序中更改tile:

var template = notifications.TileTemplateType.TileWideText01;                      
var xml = notifications.TileUpdateManager.getTemplateContent(template);
xml.getElementsByTagName("text")[0].appendChild(xml.createTextNode("My tile text"));
var myNotification = new notifications.TileNotification(xml);
notifications.TileUpdateManager.createTileUpdaterForApplication().update(myNotification);

有许多不同的模板可以选择,你可能应该同时更新宽的和方形的平铺,因为你不知道用户在他的开始屏幕上有什么。这里有更多关于如何做到这一点的细节。

我不确定你能不能让它每5秒更新一次。你只能在应用程序运行或后台任务时调用上面的代码。如果你的应用处于锁屏状态,你可以使用TimeTrigger,让它以15分钟或更短的间隔运行。如果不是,那么唯一的选择是具有相同间隔的MaintenanceTrigger,它只在您的设备插入时运行。

要使磁贴更新更频繁,甚至在设备未插入时,您可以提前安排磁贴通知。当你的应用程序在运行时,从你的后台任务中,你可以在特定的时间添加多达4096个贴图更改,并添加新的当你的应用程序或后台任务再次运行时

最好的方法就是从后台任务调度通知。你的后台任务每15分钟运行一次(不会更早),所以你必须在那个时间点安排它们。

微软的一个同事必须做类似的事情,因为他需要每秒更新(实际上是不同的人与下面的链接,但一个非常相似的概念),并以相同的方式完成。我和另一个同事开发了一个贴片辅助类,如果你喜欢的话——给我发一封微软的邮件,我会把它发给你。我可能很快就会在博客上写一篇文章,但在那之前:)

下面的代码应该能帮到你:

每分钟更新一次

链接到off的从后台任务平铺更新