Tile updates zonder backgroundtasks en zonder push notifications

De tiles van Windows 8 komen het meest tot hun recht wanneer gebruik word gemaakt van Live Tiles. Dit laat je applicatie tot leven komen terwijl de gebruiker naar zijn startscherm kijkt en kan de gebruiker motiveren tot het gebruik van je applicatie.

Om live data op de tile te krijgen zijn er een aantal mogelijkheden. Zo kan je het doen vanuit de code van de applicatie. Nadeel van deze oplossing is dat je programma moet draaien om je tile te kunnen updaten. Een andere techniek is gebruik maken van push notifications. Hiermee kan je, ook als je applicatie niet draait, vanuit de server berichten sturen naar je applicatie. Een andere techniek is gebruik maken van een BackgroundTask. Hiermee kan je eens in het kwartier, ook als de applicatie niet draait, toch wat dingen uitvoeren.

Een wat minder bekende techniek is gebruik te maken van de "StartPeriodUpdate" functie op de TileUpdater class. Met deze method kan je periodiek een Xml file met de TileContent laten ophalen vanaf internet. De content in de XML word dan in de tile gepresenteerd:

var updateManager = TileUpdateManager.CreateTileUpdaterForApplication();
updateManager.StartPeriodicUpdate(new Uri("http://localhost:1986/Content/tile.xml"), PeriodicUpdateRecurrence.HalfHour);

 

Hier in is de http://localhost:1986/Content/tile.xml het bestand met de content van de XML. Je kan per half uur, uur, per 6 uur, per 12 uur of per dag de tile zichzelf laten updaten.

De content van XML is het zelfde als je via TileUpdatemanager.GetTemplateContent kan opvragen.

zie:

- StartPeriodUpdate: http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.notifications.tileupdater.startperiodicupdate.aspx

- Tile templates: http://msdn.microsoft.com/en-us/library/windows/apps/hh761491.aspx