Kindle App Updates Demonstrate iOS App Store Flaw
Why would a company tell its customers to not download its latest offering? Because that version includes a nasty bug that can’t be quickly fixed.
On 27 February 2013, Amazon released version 3.6.1 of its Kindle iOS app and then quickly recommended that users not apply the update due to a “known issue with this update.”
Updating forced you to log back in to your Amazon account, removed all titles from the device, and marked them as New when you downloaded them. However, it still retained your last-read location in the books.
By the next morning, a 3.6.2 update appeared that worked around the problem. If you updated to 3.6.1 but didn’t open the app, jump to 3.6.2 and you won’t see any of the problems.
How is a situation like this possible? When a company submits an update to Apple for release in the App Store, it must wait for the update to be approved. In this case, an installation bug slipped through that Amazon probably couldn’t fully test against.
But once an update is submitted to Apple, the developer can’t do anything to fix such bugs other than re-submit another update that corrects the problems — which must again go through Apple’s review process.
The only other action Amazon could take was to change the release notes, which developers can do easily. And then wait for Apple to approve the new version. Unfortunately, users often don’t read the release notes, although at least the iOS App Store app has made it easier to do so on the iPhone. In an earlier version, you had to tap exactly on the tiny What’s New triangle, which was nearly impossible; now you can tap anywhere on the app’s name to show the release notes.
To reduce the impact of similar bugs in the future, Apple could make it easier for users to revert back to a previous version. As Matt Neuburg pointed out, reverting manually is possible, provided a couple of conditions apply: that you update apps only via iTunes syncing and that you don’t empty the Trash after updating. If so, you can pull the previous version out of the Trash and swap it with the one in your Mobile Applications folder.
But if you’re like me and hate to have badges appear on the App Store app icon, don’t be so quick to update everything. This isn’t the first time unexpected bugs have appeared in updates, and won’t be the last.
If, like me, you update apps only via synching with your computer, and if, therefore, you downloaded the update via iTunes on your computer, and if you didn't empty the Trash afterwards, the old version of the Kindle app is in your Trash and the new version is in your Mobile Applications folder. So it's easy to swap them, thus preventing installation of the new version the next time you synch. But that is a lot of "ifs".
Just as a note...
If you update by way of the App Store on the iOS device AND then sync with iTunes, then the old version will still be in the trash after the sync. While you will have the new version on the iOS device, if you have not emptied the trash yet (and in this case, not opened the Kindle app), you can find the old version in the trash and revert to the old version.
I know this because I don't empty my trash too often on the Mac that I sync my iOS devices with and there are currently 191 iOS apps in the trash (yes, it has been a while since I emptied the trash)...including the old version of the Kindle app.
The fix for the fix (3.6.2) has appeared on the App store.
I do agree with the app store issues though. Another pet peeve of mine is that on older iOS devices, App updates which clearly cannot run on the device (example: iOS 5.1) are still listed, with no way of hiding them for that particular device.
I agree. On my iPhone 3G I've lost a couple apps, at least, by installing an update that wasn't compatible with my iOS.
That was quick. I've updated the article to reflect the new update, and incorporated Matt's comment too.
Well despite being aware of the bug I inadvertently tapped the "update all" button on my iPad and then sat there screaming at my device as I realized I couldn't undo my stupidity. Fortunately, I'm not currently reading from my Kindle app and I waited for the updated version 3.6.2 and before opening the app. Fortunately all is well.
Actually, the developer can and should test the upgrade to a new version. This is totally Amazon's mistake. If they do get it wrong, they can take it off sale temporarily, and request an expedited review, which is exactly what they appear to have done in this instance.
Maybe Amazon did screw up, but you'd think that something as fundamental as resetting the app on a device would have been picked up. My guess (and I'm not a developer) is that something triggered during actual release that wasn't simulated during dev release testing.
"But once an update is submitted to Apple, the developer can’t do anything to fix such bugs other than re-submit another update that corrects the problems — which must go through Apple’s review process."
This isn't true. The developer can reject the binary themselves in the week that the app spends in Apple's queue. And once Apple's approved it, the developer gets a second chance to reject it (assuming they chose to have this chance; you can bypass this one).
Surely Amazon should have noticed this bug in that week.
But even after the developer releases the app, they can pull it. They can't wind back to the previous version, but they can prevent further damage.
I say this as a developer who's shipped a bad update. Apple doesn't deserve blame, and Apple didn't force me to release the app.
It would be interesting to know what Amazon did. The 3.6.1 and 3.6.2 updates have the same date, so the implication is that Amazon didn't realize the problem until it went live and people started complaining. They presumably were able to get an expedited review, which is why the fix came so quickly, but perhaps there's a window that would have prevented pulling 3.6.1 temporarily problematic - it might have delayed those who had gotten 3.6.1 from getting the 3.6.2 update. I haven't run into this personally - our TidBITS News app updates have been few and far between, but my experience with iTunes Connect and the iBookstore is that developer actions aren't necessarily acted on by the system immediately.
Like, Adam, I'd be interested to know the specifics of what was done, but I do know that the process is not as helpful as it should be. We spent some time working around an Apple IAP bug (that Adam alerted us to in fact - thank you!)which could only be tested post-release.
I evaded the problem by not opening the Kindle app before the 3.6.2 update appeared.
The incident has changed how I do updates: now I open the "more" information before hitting Update All.
Note: if you do the mores bottom up, there's less scrolling involved.
Is to "revert back" the same as to revert? (:-)