Recently I had been working on a little mobile web app that fetches JSON data, puts it in localStorage, and then renders the views for it. Since the data could get large, there is a check that occurs before the full JSON dump. If we have localStorage data, then the app asks the server what version is the latest. The app will then either render the data if it’s the latest or pull more data down from the server and stash it away and render it to the screen.
Everything was fine and dandy, until random iOS devices started having errors in the JavaScript. Initially it looked to be iPhone 4S models on iOS 6 that had the problem. As we began investigating, we realized other iOS devices of various models and software versions were getting the same problem too. We were stumped.
Read More