When users installed iOS 9 beta 2 this week they discovered that, if their device lacks the space to install the software, iOS will automatically delete their apps, install the software and redownload the app.
This created some confusion about user data. Will Apple only delete the app? Will you lose files also?
In short: I think Apple will using pre-existing technology for this feature: namely their iOS File System Basics:
Put data cache files in the Library/Caches/ directory. Cache data can be used for any data that needs to persist longer than temporary data, but not as long as a support file. Generally speaking, the application does not require cache data to operate properly, but it can use cache data to improve performance. Examples of cache data include (but are not limited to) database cache files and transient, downloadable content. Note that the system may delete the Caches/ directory to free up disk space, so your app must be able to re-create or download these files as needed – Apple
When a device runs low on space Apple does some spring cleaning: Everything that’s stored in the documents folder will be retained, cache files and specifically those files that can be downloaded again, will be deleted.
When this happens you see a Cleaning... message underneath an Apps’ icon. Apps that get their content from a service, like Kindle Books, ComiXology comics and Spotify music will probably see that content deleted and it will need to be downloaded again.
My guess: Apple will use the exact same tactic when installing an iOS update on a device that lacks the space.
A users’ experience after this process will depend on the apps they use. If the app is a well behaving iOS citizen, you’ll probably won’t loose anything important. Of the apps doesn’t follow Apple’s guidelines, you’ll probably lose some unreclaimable data.
I think, if this pans out, it’ll be a elegant system that won’t create any frustration. And it removes the biggest issue users face when updating their iPhone: lack of space.
One fair warning: never update before jumping on a plane ;-).