4

I tried many libraries and frameworks. But I couldn't find the one that is working 100%. Is there anyone can do that by using these external libraries and frameworks?

I tried all of these libraries within few days, so I might missing something. And my project is quite complicate.

Here are the list of libraries that I used.

  1. iCloud: everyone know that it wouldn't work. crash/wrong data after sync
  2. Parse with FTASync (https://github.com/itsniper/FTASync): It crashes many times. I can't test functionality.
  3. Simperium: (https://simperium.com/) I works when change few data, but it's not sync when changing many data at the same time.
  4. WasabiSync: (http://wasabisync.com/) I can't make it to work with my project.
  5. TICoreDataSync: (https://github.com/nothirst/TICoreDataSync) I tried it with dropbox. sometimes it can't sync some small data. Sometime it duplicate data from one device to another.
  6. UbiquityStoreManager: (https://github.com/lhunath/UbiquityStoreManager) This lose some data when sync. sometime it duplicate my data.
  7. FireData: (https://www.firebase.com/) This sync with fastest speed, almost instant. But it crash sometimes, and loosing data sometimes.

I really want to know that if someone can use some of these libraries in production with complex data. If someone does, it's means that I might setup it wrong.

If anyone has suggestion, it would be great. Thanks

tarake
  • 377
  • 4
  • 10
  • What is your data store? It kind of looks like you don't have one decided... Have you looked at parse.com with RestKit ? – Wain May 28 '13 at 16:55
  • At least some of those work in at least some situations. If you're having trouble with one or more of them, it would be a good idea to ask more specific questions about them, or (when possible) contact their tech support. For the ones I've tried, direct support has been very responsive. – Tom Harrington May 28 '13 at 18:44
  • Tom: Could you name the one that you tried? If it's not confidential information. – tarake May 29 '13 at 07:59
  • Wain : Yes, we don't decide data store on server yet. Thanks for suggestion. Now we're trying to use external library instead of making it by ourself (if it's possible). I'll check more into Parse+RestKit. – tarake May 29 '13 at 08:14
  • 1
    If you have specific questions about (or problems with) Simperium, you can post them on StackOverflow and tag them with "simperium" or visit the GitHub repo (the library is open source) and post an issue: https://github.com/Simperium/simperium-ios/issues?state=open – mikejohnstn May 29 '13 at 16:58
  • Mike: Thanks. I don't want to share my client information on Internet. I already sent email to contact@simperium.com. Have you recieve that? I attached screenshot and log from my application too. You can search for "CDActivity". – tarake May 30 '13 at 08:28
  • Have you looked at Ensembles? https://github.com/drewmccormack/ensembles – timbroder Jan 04 '14 at 21:42
  • The 'FireData' link is broken. – fatuhoku Mar 27 '14 at 11:30
  • Changed it to https://www.firebase.com/. I ended up implement data synchronization by myself, so I haven't try Ensembles yet. – tarake Mar 28 '14 at 09:43
  • I had to work my own code to enable iCloud sync of a core data DB. The principe I used is to export my database to plist files, synchronize those plist files using iCloud, and on the other device read the plist file and convert it back to core data. – Jerome Diaz Mar 28 '14 at 09:50

1 Answers1

0

There is no general purpose sync tool that works well. It's a difficult problem to solve, nobody has ever done it.

You should write your own, from scratch, designed specifically for your own data structure.

Abhi Beckert
  • 32,787
  • 12
  • 83
  • 110