Advertentie sluiten

Tijdens zijn laatste keynote op WWDC in 2011 introduceerde Steve Jobs een dienst die nog steeds veel ontwikkelaars angst aanjaagt. Het is niemand minder dan iCloud, de heilzame opvolger van het geplaagde MobileMe. Zelfs iCloud is echter niet zonder fouten. En de ontwikkelaars komen in opstand...

Steve Jobs demonstreerde iCloud voor het eerst in juni 2011, de dienst werd vier maanden later gelanceerd en is nu ongeveer anderhalf jaar in gebruik. Op het eerste gezicht een relatief soepele dienst die, in de woorden van de legendarische visionair, ‘gewoon werkt’ (of dat zou in ieder geval moeten doen), maar van binnen een ongetemd mechanisme dat vaak doet wat het wil, en ontwikkelaars geen effectief wapen hebben tegen Het.

"Alles gebeurt automatisch en het is heel eenvoudig om je apps te verbinden met het iCloud-opslagsysteem," Dat zei Jobs destijds. Als de ontwikkelaars zich nu zijn woorden herinneren, moeten ze waarschijnlijk in de war raken. “iCloud werkte gewoon niet voor ons. We hebben er echt veel tijd aan besteed, maar iCloud en Core Data-synchronisatie hadden problemen die we niet konden oplossen.” hij gaf toe het hoofd van de Black Pixel-studio, die onder meer verantwoordelijk is voor de bekende RSS-lezer NetNewsWire. Voor haar had iCloud de ideale oplossing voor synchronisatie moeten zijn, zeker in een tijd waarin Google op het punt staat zijn Google Reader te sluiten, maar de weddenschap op de Apple-dienst pakte niet uit.

Niks werkt

Het is verrassend dat een dienst die ruim 250 miljoen gebruikers heeft en daarmee een van de grootste in zijn soort ter wereld is, zulke problemen heeft. Bij een vluchtige blik op de zaak zou je met de vinger naar de ontwikkelaars kunnen wijzen, maar op dit moment zijn zij hierin onschuldig. iCloud probeert veel ervan in zijn applicaties te implementeren, maar hun pogingen eindigen vaak op een mislukking. Omdat iCloud ernstige problemen heeft met synchronisatie.

[do action=”quote”]Ik kan niet eens alle ontwikkelaars tellen die tegen problemen aanliepen en het uiteindelijk opgaven.[/do]

"Ik heb mijn iCloud-code verschillende keren herschreven in de hoop een werkende oplossing te vinden," hij schreef ontwikkelaar Michael Göbel. Hij heeft echter nog geen oplossing gevonden en kan zijn applicaties, of beter gezegd de App Store, nog niet op de markt brengen. “Ik kan niet eens alle ontwikkelaars en bedrijven tellen die tegen dezelfde problemen aanliepen als ik en die het uiteindelijk opgaven. Nadat ze honderdduizenden gebruikersgegevens waren kwijtgeraakt, hebben ze iCloud eenvoudigweg verlaten.”

Apple's grootste probleem met iCloud is databasesynchronisatie (Core Data). De andere twee soorten gegevens die via de cloud van Apple kunnen worden gesynchroniseerd – instellingen en bestanden – werken zonder problemen binnen de grenzen. Core Data gedraagt ​​zich echter volkomen onvoorspelbaar. Het is een raamwerk op hoog niveau waarmee u meerdere databases op verschillende apparaten kunt synchroniseren. "iCloud beloofde alle databasesynchronisatieproblemen op te lossen met Core Data-ondersteuning, maar het werkt gewoon niet", zei een van de prominente ontwikkelaars, die niet bij naam genoemd wilde worden om goede relaties met Apple te onderhouden.

Tegelijkertijd negeert Apple deze problemen volledig, iCloud blijft adverteren als een eenvoudige oplossing en gebruikers eisen dit van ontwikkelaars. Maar ondanks de inspanningen van de ontwikkelaar verdwijnen de gegevens van gebruikers ongecontroleerd en stoppen apparaten met synchroniseren. "Het oplossen van deze problemen duurt vaak uren, en sommige kunnen uw accounts permanent kapot maken", een andere toonaangevende ontwikkelaar buigt zich over Apple en voegt eraan toe: "Bovendien kan AppleCare deze problemen niet met klanten oplossen."

“We worstelen voortdurend met de combinatie van Core Data en iCloud. Dit hele systeem is onvoorspelbaar en de ontwikkelaar heeft vaak beperkte mogelijkheden om de werking ervan te beïnvloeden." beschrijft de Tsjechische ontwikkelingsstudio Raak Art aan, wat ons bevestigde dat het vanwege aanhoudende problemen deze oplossing verlaat en op zichzelf gaat werken, waarbij het bestandssynchronisatie zal gebruiken in plaats van databasesynchronisatie als zodanig. Hij kan hiervoor dan iCloud gebruiken, omdat de bestandssynchronisatie daar zonder problemen verloopt. Dit wordt immers ook bevestigd door de ontwikkelaars van Jumsoft: "iCloud is ongetwijfeld een geweldig hulpmiddel voor directe bestandsopslag." Jumsoft heeft echter helaas Core Data nodig voor zijn bekende Money-applicatie, en dit is een struikelblok.

[do action="quote"]iCloud en Core Data zijn de ergste nachtmerrie van elke ontwikkelaar.[/do]

Veel problemen komen ook voort uit onverwachte situaties die gemakkelijk kunnen optreden, zoals wanneer een gebruiker uitlogt bij de ene Apple ID op zijn apparaat en inlogt via een andere. Apple rekent er helemaal niet op. "Hoe los ik het probleem op als de gebruiker, die niet is ingelogd bij iCloud, de applicatie inschakelt, vervolgens verbinding maakt met iCloud en de applicatie opnieuw start?" hij vroeg met één ontwikkelaar op de Apple-forums.

Alle problemen met iCloud culmineren in de ontevredenheid van app-gebruikers die data kwijtraken, terwijl ontwikkelaars vaak hulpeloos toekijken. "Gebruikers klagen bij mij en beoordelen apps met één ster", hij klaagde op de Apple-forums, ontwikkelaar Brian Arnold, die nog steeds geen uitleg van Apple heeft gekregen over wat te doen met soortgelijke problemen, of waarom ze überhaupt voorkomen. En de forums staan ​​vol met dergelijke klachten over iCloud-synchronisatie.

Sommige ontwikkelaars verliezen al hun geduld met iCloud, en dat is geen wonder. "iCloud en Core Data zijn de ergste nachtmerrie van elke ontwikkelaar", zei voor The Verge naamloze ontwikkelaar. "Het is frustrerend, soms gekmakend en de moeite waard om urenlang problemen op te lossen."

Appel is stil. Problemen omzeilt hij zelf

Misschien is het geen wonder dat Apple's problemen met iCloud voorbijgaan alsof er niets is gebeurd. Apple gebruikt de problematische Core Data praktisch niet in zijn applicaties. Er zijn eigenlijk twee iClouds: één die de diensten van Apple aanstuurt en één die aan ontwikkelaars wordt aangeboden. Apps en services zoals iMessage, Mail, iCloud-back-up, iTunes, Photo Stream en andere zijn gebouwd op compleet andere technologie dan wat beschikbaar is voor externe ontwikkelaars. Dat wil zeggen, degene waarmee er voortdurend problemen zijn. Applicaties uit de iWork-suite (Keynote, Pages, Numbers) gebruiken dezelfde API als applicaties van derden, maar alleen voor een veel eenvoudigere documentsynchronisatie, waar Apple grote zorg aan besteedt om dit te laten werken. Wanneer ze iCloud en Core Data in hun app in Cupertino toelaten, zijn ze qua betrouwbaarheid niet beter dan externe ontwikkelaars. De Trailers-applicatie, die Core Data gebruikt voor synchronisatie, spreekt voor zich en gebruikers raken regelmatig enkele records kwijt.

Bij Trailers, die lang niet zo populair zijn, zijn deze problemen echter relatief gemakkelijk te verliezen. Maar wat moeten de ontwikkelaars van de populairste applicaties dan tegen hun gebruikers zeggen, die simpelweg moeten vertrouwen op de problematische Core Data in iCloud, maar vaak niet het soort functionaliteit kunnen garanderen dat Apple voortdurend in zijn advertenties adverteert? Apple zal ze zeker niet helpen. "Kan iemand van Apple commentaar geven op deze situatie?" hij vroeg tevergeefs op het forum, ontwikkelaar Justin Driscoll, die gedwongen werd zijn aankomende app af te sluiten vanwege onbetrouwbare iCloud.

Gedurende het jaar helpt Apple ontwikkelaars niet, dus iedereen hoopte dat er tenminste iets zou worden opgelost op de WWDC van vorig jaar, dat wil zeggen een conferentie bedoeld voor ontwikkelaars, maar zelfs hier bracht Apple niet veel hulp onder de enorme druk van ontwikkelaars. Hij leverde bijvoorbeeld voorbeeldcode aan die gebruikt kan worden om Core Data te synchroniseren, maar deze was verre van compleet. Nogmaals, geen noemenswaardige hulp. Bovendien drongen Apple-ingenieurs er bij ontwikkelaars op aan te wachten op iOS 6. "Door de overstap van iOS 5 naar iOS 6 zijn de zaken XNUMX% beter geworden," bevestigd door een niet bij naam genoemde ontwikkelaar, "Maar het is nog verre van ideaal." Volgens andere bronnen had Apple vorig jaar slechts vier medewerkers die zich bezighielden met Core Data, wat duidelijk zou aantonen dat Apple op dit gebied niet geïnteresseerd is. Het bedrijf weigerde echter commentaar te geven op deze informatie.

Tot ziens en sjaal

Na alle genoemde perikelen is het niet verwonderlijk dat veel ontwikkelaars nee zeiden tegen iCloud, zij het waarschijnlijk met pijn in het hart. Het was iCloud die eindelijk iets moest brengen waar ontwikkelaars naar verlangden: een eenvoudige oplossing die identieke databases en hun constante synchronisatie op twee of meer apparaten garandeert. Helaas is de realiteit anders. “Toen we naar iCloud en Core Data keken als oplossing voor onze app, beseften we dat we deze niet konden gebruiken omdat niets zou werken,” zei de ontwikkelaar van enkele van de best verkochte iPhone- en Mac-applicaties.

Een andere reden waarom iCloud niet gemakkelijk wordt opgegeven, is het feit dat Apple de applicaties opmerkt die gebruik maken van zijn diensten (iCloud, Game Center), en de applicaties die niets van Apple in de App Store hebben volledig negeert. Ook vanuit marketingoogpunt is iCloud een goede oplossing.

Dropbox wordt bijvoorbeeld aangeboden als mogelijk alternatief, maar is niet meer zo gebruiksvriendelijk. Enerzijds moet de gebruiker een ander account aanmaken (iCloud is automatisch beschikbaar bij aankoop van een nieuw toestel) en anderzijds is er autorisatie nodig voordat de applicatie kan functioneren, wat bij iCloud ook niet lukt. En tot slot: Dropbox biedt documentsynchronisatie, wat simpelweg niet is waar ontwikkelaars naar op zoek zijn. Ze willen databases synchroniseren. "Dropbox, momenteel het meest gebruikt, heeft zich bewezen voor datasynchronisatie. Maar als het om het synchroniseren van de database gaat, zijn we afhankelijk van iCloud", geeft Roman Maštalíř van Touch Art toe.

[do action="quote"]Ik zou Apple graag willen vertellen dat ze alles in iOS 7 hebben opgelost, maar ik geloof het niet echt.[/do]

De ontwikkelaars van de 2Do-applicatie hadden echter geen geduld, door talloze negatieve ervaringen met iCloud probeerden ze de Apple-service helemaal niet uit en kwamen ze meteen met hun eigen oplossing. “We gebruiken iCloud niet vanwege alle problemen. Het is een heel gesloten systeem waar we niet zoveel controle over kunnen hebben als we zouden willen.” ontwikkelaar Fahad Gillani vertelde het ons. "We kozen voor Dropbox voor synchronisatie. We gebruiken de documentsynchronisatie echter niet, we hebben er onze eigen synchronisatieoplossing voor geschreven."

Een andere Tsjechische studio, Madfinger Games, heeft ook geen iCloud in zijn games. De maker van de populaire titels Dead Trigger en Shadowgun maakt echter om iets andere redenen geen gebruik van de Apple-service. "We hebben ons eigen cloudgebaseerd systeem voor het opslaan van in-game posities, omdat we de voortgang van het spel tussen platforms wilden kunnen overbrengen", David Kolečkář onthulde ons dat iCloud nooit een oplossing was vanwege de ontwikkeling van games voor zowel iOS als Android voor Madfinger Games.

Zal er een oplossing zijn?

Naarmate de tijd verstrijkt, verliezen veel ontwikkelaars langzaam de hoop dat Apple met een oplossing zal komen. Zo komt de volgende WWDC eraan, maar aangezien Apple zelfs nu vrijwel niet met ontwikkelaars communiceert, wordt niet verwacht dat hij met open armen vol advies en antwoorden naar WWDC komt. "Het enige wat we kunnen doen is bugrapporten naar Apple blijven sturen en hopen dat ze deze oplossen", zegt hij. klaagde een niet bij naam genoemde iOS-ontwikkelaar, terwijl een ander zijn gevoelens herhaalde: "Ik zou graag tegen Apple willen zeggen dat ze alles in iOS 7 hebben opgelost en iCloud na twee jaar eindelijk zonder problemen kan worden gebruikt, maar daar geloof ik niet echt in." Maar iOS 7 zou het centrale thema van de WWDC van dit jaar moeten zijn, dus ontwikkelaars kunnen er op zijn minst op hopen.

Als Apple in een nieuwe versie van zijn besturingssysteem geen oplossing biedt voor iCloud-problemen, zou dat voor sommige projecten een virtuele spijker aan de kist kunnen zijn. Een van de ontwikkelaars, die tot nu toe een groot voorstander is van iCloud, zegt: "Als Apple dit niet in iOS 7 oplost, zullen we het schip moeten verlaten."

Bron: TheVerge.com, TheNextWeb.com
.