Mobile Zone is brought to you in partnership with:

Mikael is the founder of Adafy Oy, a Finnish software startup providing development services for Windows Phone, Windows 8 and Windows Azure. Adafy is available for hire: www.adafy.com. Mikael is a DZone MVB and is not an employee of DZone and has posted 42 posts at DZone. You can read more from them at their website. View Full User Profile

Periodic Live Tile Updates with Windows 8

06.19.2012
| 1958 views |
  • submit to reddit

One small tip if you’re creating a Windows 8 Metro app and want to update the live tile periodically using the TileUpdater-class: The request made by the OS for the live tile update doesn’t set the Content-Type so make sure that you backend is actually returning XML by default.

image

I encountered this when I built my app’s backend using ASP.NET Web Api and noticed that the live tile updates weren’t actually working. The backend was returning JSON instead of the XML because that’s the default format for the Web Api. In my case the backend only serves the live tile updates so I completely removed the JSON-formatter:

var config = new HttpSelfHostConfiguration("http://localhost:8080");
 
config.Routes.MapHttpRoute("Default", "api/{controller}/{id}",
    new { id = RouteParameter.Optional });
 
config.Formatters.RemoveAt(0);
 
using (var server = new HttpSelfHostServer(config))
{
    server.OpenAsync().Wait();
 
    Console.WriteLine("Press Enter to quit.");
    Console.ReadLine();
}

Now the backend is returning XML and the periodic live tile updates work properly.

Published at DZone with permission of Mikael Koskinen, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)