IOS5 Breaks Data Storage and Crushes My Soul
gaiagps.com
gaiagps.com
If Apple could offer a way for users to allocate a fixed amount of space for certain apps and opt out of syncing certain data per app, it wouldn't be a problem.
What's more this change suddenly happened. There was no bright red warning sign going into the release, these developers are finding out the hard way.
The important use case is what should happen when you lose your phone/tablet and buy a replacement. Or wipe it. Should the data be restored or should it be lazily regenerated/redownloaded?
For map cache data, re-download it. Otherwise, the map app runs fast at the expense of all the other apps on the device.
Data that has been preloaded to read offline (e.g., Instapaper) should be stored in Documents. If I lost my iPad, I would not want to have to manually reload a bunch of articles when I got a replacement.
I understand that IOS5 has gratuitously broken a lot of apps, and the new regime may have been communicated badly. (May have. I'm not an IOS developer; I don't know what the developer documentation says.) But IOS is user-centric, not dev-centric.
Now imagine when they go to fly and they turn the app on, half of the charts disappear. Are you suggesting I architect the app to go ahead and download the new maps when this happens?
Because if that's your suggestion, the Air Force and commercial airlines no longer wants to use my app. Those charts darn well better be on board when they expect them to be. They need to be able to reliably have both gigs of current charts, and gigs of upcoming charts, ready to fly. They might fly to China or elsewhere they won't be able to update, enroute.
(Are you the original article's author? If so, sorry I misunderstood the lifetime of your mapping data.)
Also, is iCloud secure enough for sensitive military charts? Maybe it is, but even so, explaining that to buyer is going to be a problem.
If Apple insists on this course of action, the eventual solution is probably vector maps. But a good vector mapping API doesn't exist for developers, doesn't work for many maps that only exist as rasters, and will take much R&D to make into a reasonable reality. In the meantime, I would hope that Apple chooses to unbreak the hundreds of popular mapping apps they broke last week.
If Apple insists on getting rid of the old behavior of the Caches folder, they need to deprecate it over the course of a year or so. None of us even figured out this would happen until after iOS5 went live, despite extensive testing from many devs. How this went live is beyond me.
One way to get to the issue is to ask these questions, I think: "is the data copied from another source?" and "is the data needed in offline use?" (where data is some amount of data larger than Apple can handle)
N,N = Documents
Y,N = Cache
N,Y = Documents
Y,Y = ???
What about that last case? It's even more annoying with map tiles than flight charts, if you've ever spent time backing up map tiles when you know they're already backed up on the main map tile server.Developers want a place to store app information that is critical and sometimes a very important part of the app(example main feature of instapaper is to view offline content). This should not be backed up since its redundant and when the phone needs to be restored(rarely) this data can be re-downloaded. Also backing up will be slow and destroy user experience.
Solution make another location which is used for storing the data(not backed up) so then all are happy. Maybe you can have data from hidden directories not backed up inside the Documents directory. Then Apple can delete caches in apps like browsers. User critical data like settings can be backed up and app critical data that need not be backed up can also exist
If it's that important, it SHOULD go in a folder that's backed up/synced to the cloud or so it seems to me. What happens when users conditioned to expect that all their documents will automagically appear on all their Apple products discover that the maps they set up on their iPad at home aren't on on their iPhone when they get out in the field? Food for thought.
($10 isn't a lot until you divide it by the dollar value of what you're getting, namely virtually nothing in the case of map tile backup.)
Why back up? Peace of mind for when your phone dies, is the reason. Backing up map tiles, while marginally useful on a restore, becomes not worth the time spent because there is no peace of mind benefit--the map tiles are already backed up. All the user experiences is that the sync is taking forever.
Have you ever read any of Raymond Chen's "oldnewthing" blog? He talks a lot about app compatibility between Windows versions, and how they are forced to not change certain undocumented behaviors because developers end up relying on them regardless of the documentation.
I didn't read the docs for iOS "caches" storage but I have a feeling this is another case of Apple's "break clients for a better OS" view on app-compat, compared to the MS's "buggy-er OS that still runs Windows 1.0 apps" view (I'm primarily a Windows dev, writing this from my iMac, so I'm not really biased either way, just an observation/guess).