If you’re a developer and wondering “Why isn’t my Live Tile updating?”, you’ve came to the right place! In this article, we will list out all the potential reasons that your tile notification can fail to display.
- Are you using the Notifications library to construct your tile notifications?
- If not, are you XML-escaping content and constructing valid XML?
- Are you trimming lengthy text strings, so you don’t break the 5 KB payload restriction?
- Are you using images in your tile notification?
- Ensure that the path to your images is valid
- If they are HTTP images, are the images less than 200 KB in size?
- Did you include a binding for each tile size you support?
- Did you accidently turn off the Live Tile in Start?
Payload larger than 5 KB
The XML payload that you construct must be no larger than 5 KB. Otherwise, you will get a COMException with HResult 0x803E0115 saying that “The size of the notification content is too large.”
For tips on how to reduce your payload size, please read How to keep your tile notification payload under 5 KB.
Remote HTTP image larger than 200 KB
Each HTTP image in your tile notification must be smaller than 200 KB. If one is larger than 200 KB, your tile notification will fail to display. To fix this, use a small enough image in your tile notifications so that you won’t break the 200 KB limit.
Local images do not have this restriction, so you alternatively could download the HTTP images, save them to app data, and refer to them with ms-appdata:///.
Invalid XML payload
If your XML itself isn’t valid XML, or if you have invalid unsupported XML elements inside your tile notification, your tile notification will fail to display.
The best way to ensure your tile XML payload is valid is to use the Notifications library to construct your tile notifications, rather than using raw XML. This will automatically XML encode your content, and it will also ensure the XML generated is 100% valid.
Otherwise, if you’re hand-crafting your XML payloads, use the Notifications Visualizer app and paste your XML payload into the Visualizer to see if there are any errors. And remember to XML encode any text content you inject into your XML (like the <> brackets or quotes).
Include bindings for each tile size you support
By default, an unmodified UWP project supports Small, Medium, and Wide tile sizes. Optionally, you can add a large logo to support the Large tile size.
When you send a tile notification, make sure you include bindings for all the tile sizes your app supports.
Ensure the Live Tile isn’t turned off
On Desktop, you can right click a Live Tile and turn it off. Make sure you accidently didn’t do that at some point.