After the release of the Mango update I hoped that the problems surrounding Live Tiles on Windows Phone were a thing of the past. Unfortunately, that’s not the case. While they did fix one problem, Microsoft managed to create another. So while the World gets to enjoy Windows Phone 8 today with all it’s new glitzy features like; NFC, Kid’s Corner, etc. And the rest of us wait for Windows Phone 7.8 with it’s new Start screen, I have one simple question for Microsoft, “what have you done to fix Live Tiles”?
Prior to Mango, Live Tiles were updated via two methods. Push, which required a developer to setup a server to push data to your phone, based on it’s unique ID, as seldom or often as required to meet the needs of the application. So, even something as simple as changing the color or message on a tile would require a push message sent to the app via the Web through endpoints. Push tiles were great for real-time Sports and Stock apps, but generally unnecessary for many apps that did not require updates all that frequently. Unfortunately though, there was a bug in the WP registry that would recreate these endpoints, or fail to delete them when apps were uninstalled, causing them to accumulate and eventually shut down all of your Live Tiles. While access to the registry was locked down to all but a few devices after the Mango update, my understanding is that this problem was resolved, and as evidenced by my “push” Live Tiles still working after 8 months with my L900, I would say that’s a pretty accurate.
The second method for updating Live Tiles was “pull”, or what has now evolved into Background Tasks. Basically, an app could request an update, not more than once per hour, from it’s own server, or another server hosting the information (like a weather service for example) which would update the tile. While this method worked, and was not affected by the endpoint troubles explained above, the requests did not always go through in a timely manner causing tiles to remain not-updated for extended periods. Urban Dictionary was a good example of this method, updating only once a day (at midnight) with a new phrase for its Live Tile.
Introducing Background Tasks
Microsoft’s answer to Live Tiles shaky start was Background Tasks. Primarily intended to allow music, alarm, and other types of apps to get updated in the background (hence the name) even if the app was tombstoned or not directly behind the lock screen, it also replaced the “pull” method of Live Tile updating. Allowing tiles to be updated as often as every 30 minutes reliably (well, sort of). Additionally, tiles could be updated “locally” meaning that an app would not have to go out to a server to make a change to a tile based on info that already existed within an apps local database. Showing reminders or tasks due on a tile, or color/font selection are good examples of this. Most of the app developers who initially used “push” or “pull” tiles immediately jumped on board with Background Tasks (BGTs) as they had been beaten up badly in app reviews stating their apps Live Tile never updated, although those in the know knew the problem had to do with Registry endpoints and not poor coding. Additionally, developers who couldn’t support the cost for a dedicated “push” server could now have Live Tiles update locally, with data existing on your device. This created a bunch of new and reworked apps utilizing BGTs.
I recall when Mango was being introduced that Microsoft stated that because of their overwhelming popularity, the 15 Live Tile limit for “push” apps (I actually got 16 to run once) was going to be raised to 30 Live Tiles. Nice thought, and thanks for that. But while I can’t keep track of how many BGT apps I have installed (and deleted) I currently only have three apps that still use “push”; Pro Sports Scores, Sports Scores and Parcel Tracker, all of which work perfectly btw. No chance I will ever reach 30, or 15 for that matter.
And now that BGTs have been increased from 9 (what were they thinking) to 15 (at least on my L900) after the most recent OS update, that’s no longer an issue. The problem has to do with the total number of apps currently on your device in the BGTs Advanced section. This list represents installed apps that are either currently running BGTs, or can run BGTs if opened or allowed. A couple months back I followed a forum thread (Live Tile Issues) at WPC and users “femanuele” and “thed” regarding this bug describing how all Live Tiles would stop working when the total BGT count reached a number somewhere between 22 and 29. Initially, I thought this was a one off, or specific device problem. But the first time I reached 27 or 28 BGTs I was stricken with the bug. The only known remedy is to reduce the number of BGTs back down to 20 to 24. And of course the only way to remove a BGT from the Advanced section is to “delete” the app from your device. For clarification, this has “NOTHING” to do with Active BGTs and the fact they will disable after being inactive for 2 weeks. When you are stricken with this bug, “ALL” third party apps with BGTs will stop updating until you reduce the total number of BGTs in the BGT Advanced section. The thread author was working with Microsoft support for a solution, but nothing has been posted since May/June, so not sure where it stands today. And the numbers vary because users have reported different results, using different devices. Femanuele experienced the problem with as few as 12 BGTs, but Thed needed 22 to trigger a problem. I loaded up my Surround last night with 29 BGTs in the Advanced section, with 9 or 10 active. With WiFi running (thanks to iHeart Radio) it looked like most everything was working this morning (a few tiles displayed different info than my L900) but I will need a few more days to be sure. I haven’t done enough research to determine if this this bug affects all devices post Mango update, or only WP7.5 devices (with Mango pre-installed).
The frustration is that I have probably deleted 10 or 12 apps over the past few months because I exceeded the 25 or 26 BGT threshold that typically puts my Live Tiles into a tailspin. Deleted a few apps yesterday morning to get back down to 24 BGTs. I need to keep a constant vigil on this list, checking each time I install a new app. I constantly monitor my battery with the sideloaded Battery Meter app, and immediately know if I have a Live Tile problem when the remaining power on the tile does not jive with my usage. Checking a couple other tiles usually verifies my suspicions. While 24-25 apps with BGTs is a pretty high number (I have more than 150 apps installed, so only 15-16%) I am sure many users have reached this plateau, or the needed number for their device, and experienced this BGTOL Bug.
Do you have more than 25 BGTs in your Background Tasks/Advanced section? Have you experienced this bug? Any theories or solutions? Has Microsoft addressed this serious issue with WP8, and hopefully WP7.8? Inquiring minds want to know. Would be nice if Live Tiles just worked. Just sayin’.