1
votes

I am in the planning stage of a new project that will require to use Core Data. It has these requirements: 1. Be able to access same data across multiple devices. 2. Be able to access same data in offline or online 3. Guarantee data will not be lost.

Couple years ago, I embarked on similar project. But I had to abandon these features.

Does Core Data with iCloud syncing work well enough for current iOS 7 and 8 to warrant another attempt?

If not, I am thinking about using CloudKit and local Core Data storage. But then I will have to write extra code to update both.

Any suggestions?

1
Just use Ensembles. - thom_ek
I would use CoreData with iCloud syncing. It seems to work now and there are lots of WWDC videos on CoreData. Plus the CoreData debugging in iOS 8 is much improved and you can use developer.icloud.com to see what's being written to the CoreData store. CloudKit has no offline storage so you will need to use CoreData and then sync between CoreData and CloudKit - could be tricky. As always, the issue with accessing data from multiple devices simultaneously is conflict resolution and no technology will provide that for you out-of-the-box (except last write wins, of course) - Robotic Cat

1 Answers

0
votes

You could use https://github.com/evermeer/EVCloudKitDao It's a CloudKit library with support for local caching (not Core Data, but files using NSCoding)