Key Point
- Ideally apps would not directly connect to preferred storage solutions, but instead the operating system should do that work ← tweet
UPDATE: This blog post was originally written several years ago. Really, this issue isn't just about mobile operating systems, with application vendors on desktop apps also trying to force you into their own cloud storage (like the incessant Microsoft Office appeals to log into One Drive). Ideally the operating system would mediate access to any user storage, be it local, some other cloud storage vendor, or the same storage vendor as the app:

Although mobile technology and cloud services are in their infancy, there is a major gap that eventually (perhaps years) needs to happen in my opinion: divorcing apps from specific cloud services. Take my recent experience using Grafio (a drawing app on the iPad) for the first time:

The problem is that there is a direct, two-way connection between Dropbox and Grafio (as well as Box, as the first diagram below shows) that is fragile and requires each app to maintain. Instead, if iOS offered an intermediary layer for the file system (either locally on the iOS device or through a cloud service), then the app (in this case Grafio) would not interact directly with Dropbox at all (the second diagram below).

There would be several advantages of the operating system (whether iOS, Android, or otherwise) being the intermediary:
- All apps (that used the OS correctly) could interact with all cloud file store services (that the OS supported). This would also mean that as the OS adds a new service, all apps would have access to that service (for example, I rarely use Dropbox, so some tools force me to work differently).
- Syncing of files could be managed by the OS, rather than each app having to separately implement it (many apps do not implement the syncing well, even to a small number of services, now).
- Policies could be implemented across the whole device, rather than on a per-app basis (although of course the OS would need to support the ability to restrict certain services to certain trusted apps).
The real power would arise when the OS didn't just intermediate file stores in the could. What if the OS also did the same for people (for example, pulling in data from CRMs), tasks, digital assets, projects, etc. Then we would also be able to set our devices to "don't show me any work information today" and the OS just wouldn't show any work information in any app from any source.
Is this pie in the sky? Perhaps (especially since some operating systems would not have much incentive to open up to other cloud services), but I hope that at some point in the future this is how these devices work with cloud services. In the meantime, we will have a fragmented and incomplete mobile experience.