As we’ve seen multiple times from MobileMe to iOS Maps, online services are Apple’s (AAPL) most glaring weakness. And now it seems that we can add iCloud to the list of Apple’s online service follies, because many third-party developers are hopping mad at what they describe as Apple’s failure to make iCloud seamlessly integrate and sync up with third-party application data. In a lengthy and detailed piece over at The Verge, Ellis Hamburger talks with several disgruntled developers who say, among other things, that “iCloud hasn’t worked out for us,” that “it just doesn’t work,” that it creates “issues that take hours to resolve and… can permanently corrupt your account,” and that it’s “a developer’s worst nightmare… it’s frustrating, maddening, and costs hundreds of support hours.”
The big issue, writes Hamburger, is that “Apple has failed to improve the way it syncs databases (‘Core Data’) with iCloud,” which results in apps where “data disappears” or where “devices and data stop syncing with each other,” all “despite a developer’s best efforts.” These Core Data syncing problems have also damaged the reputations of many apps that try to sync up with iCloud since users who lose their data tend to blame the app developer and not Apple for their lost files.
“I too have been receiving customer complaints and one-star ratings,” wrote one developer in an Apple support forum. “I have yet to receive a suitable response as to why the problems are occurring, or what I might be able to do about them.”
As a result of all this, Hamburger writes, many app developers are simply giving up on integrating iCloud into their apps for the time being, despite the fact that iCloud is the most-used cloud storage service in the United States.
“Ultimately, when we looked at iCloud + Core Data for [our app], it was a total no-go as nothing would have worked,” one best-selling iPhone app developer told Hamburger. “Some issues with iCloud Core Data are theoretically unsolvable (stemming from the fact that you’ve put an object model on top of a distributed data store) and others are just plain bugs in the implementation.”