I’m having an problem where the iPad insists on loading an old copy of a .js file, instead of the current one. Strangely enough, this only happens when the page is in fullscreen mode, not when it’s being run from the page.
- I’m not using any kind of cache manifest;
- When I open the page on Safari, it behaves as dictated by the latest version of the .js;
- When I open the page through the icon, it behaves as dictated by the old .js;
- Killing the running application, deleting the icon and then creating it again doesn’t solve the problem; it’s still using the old .js, even while in full screen.
Does anyone have an idea of what’s going on?
— update —
This seems to be an iOS 5 bug.
— Workaround (a.k.a. ugly hack) —
Simply add some fake http params to the script tag, so that the cache thinks it’s entirely another JS:
<script src="js/pentaho-jqm-repository.js"></script>
Becomes:
<script src="js/pentaho-jqm-repository.js?fkn-ios-bug=1"></script>
After using the aforementioned workaround (adding a fake parameter to the URL) and then changing it back, strangely enough, the problem stopped happening. Of course, in a production environment, one wouldn’t be able to do this, so I think I’ll just start numbering the js versions so that the end user won’t have this problem.