public static void UpdateLiveTile(string notificationString = null)
{
var status1 = notificationString ?? "No new notifications";
var status2 = (notificationString != null && Settings.UnreadSnapCount > 1) ? "More..." : "";
var xml = @"
<tile>
<visual version=""3"">
<binding template=""TileSquare71x71IconWithBadge"">
<image id=""1"" src=""ms-appx:///Assets/LiveTileLogo.png"" />
</binding>
<binding template=""TileSquare150x150IconWithBadge"">
<image id=""1"" src=""ms-appx:///Assets/LiveTileLogo.png"" />
</binding>
<binding template=""TileWide310x150IconWithBadgeAndText"">
<image id=""1"" src=""ms-appx:///Assets/LiveTileLogo.png"" />
<text id=""1"">Snapchat</text>
<text id=""2"">" + status1 + @"</text>
<text id=""3"">" + status2 + @"</text>
</binding>
</visual>
</tile>";
var xmlDoc = new XmlDocument();
xmlDoc.LoadXml(xml);
var tu = TileUpdateManager.CreateTileUpdaterForApplication();
tu.Update(new TileNotification(xmlDoc));
// Update Badge
xmlDoc.LoadXml("<badge value=\"" + Settings.UnreadSnapCount + "\"/>");
var bu = BadgeUpdateManager.CreateBadgeUpdaterForApplication();
bu.Update(new BadgeNotification(xmlDoc));
}