0

I'd like to backup and restore files (or other type of informations like key-value, SQL-like transaction based info.) for NOT ONLY my app but also all the other Apps using iCloud.

I'm just new to iCloud and read only a few documents but it seems iCloud APIs are just for single App boundary (of course I understand there is an option for sharing information between 'Group' of applications).

What I want to do is backup and restore almost everything. How can I do that? (There some apps doing this like http://www.copytrans.net/copytranscontacts.php http://www.macrumors.com/2012/05/18/elcomsofts-phone-forensics-software-offers-near-real-time-access-to-icloud-backups/)

I checked that the some of the Mobile App files are stored inside the "~/Library/Application\ Support/MobileSync/Backup" directory but there are only some of the files from all the files actually stored in iCloud.

And I tested CloudKit, but it just takes control over App's own data only.

Thanks in advance.

Locke
  • 315
  • 1
  • 3
  • 14
  • @rmaddy I thought so, but there are Apps import/export Contacts from/to iCloud. It seems there are some HTTP reverse engineered solutions by analyzing iCloud.com site for Contacts and Reminders. And before you downvote someone's question as useless, it would be better think another possibilities. I saw Janckson's answer at this? http://stackoverflow.com/questions/10661623/download-iphone-backups-from-icloud And I'm hpoing to see any positive answer. Thanks – Locke Aug 14 '14 at 17:18
  • There's a difference between accessing contacts (public API) and all application data! Your suggestion is just a big no-no in terms of data privacy. It won't work, and that for a good reason. – Eiko Aug 19 '14 at 07:10
  • @Eiko, thanks. I am aware of your points. I think I didn't make myself clear. Thanks again. – Locke Aug 19 '14 at 15:08

1 Answers1

2

One thing to keep in mind when thinking about this is that iTunes actually doesn't backup or restore anything to/from iCloud. iOS device does it on its own: there's a daemon process running and if iCloud Backup is enabled, it will backup directly to iCloud, without talking to iTunes. Restore is also done without interaction with iTunes.

Next, as @rmaddy pointed out, your app on the device cannot access files of other apps, so you won't be able to do what you want from the device. If you want to do this via companion app running on PC/Mac then it might be possible, but will depend on what exactly do you need/want.

Re: contacts. Apps can access AddressBook and thus can sync/upload its contents. Apps can also access some other shared data, such as Photo Library. This is still a far cry from your original request to "Backup/Restore data for all Apps".

Re: downloading iCloud backups. Downloading isn't a big deal those days (Disclosure: I am the author of that forensic tool to download iCloud backups you're mentioned). There is even an open-source code for that. However, downloading and restoring are two very different processes. Specifically, you can download, but your app won't have enough permissions to write files in place.

Hope this helps and clears things up.

Andrey
  • 1,561
  • 9
  • 12
  • Thank you Andrey for all clarifications. – Locke Aug 19 '14 at 14:26
  • Andrey, I was able to backup/restore Contacts, Reminders, Notes by using iCloud.com web apis. And yes, thanks to your and Eiko's clarification and my personal research I understand the points you are talking about. Here comes another question. If you can donwload iPhone backup in the cloud, maybe I can upload any new backup data to the cloud? – Locke Aug 19 '14 at 15:02
  • Yes, it should be doable (yet undocumented). I haven't done or researched this though. – Andrey Aug 19 '14 at 15:05