Stäng annons

Vid sin sista keynote på WWDC 2011 introducerade Steve Jobs en tjänst som fortfarande skrämmer många utvecklare. Det är ingen mindre än iCloud, den välgörande efterträdaren till det oroliga MobileMe. Men även iCloud är inte felfritt. Och utvecklarna gör upplopp...

Steve Jobs demonstrerade iCloud för första gången i juni 2011, tjänsten lanserades fyra månader senare och har nu varit i drift i ungefär ett och ett halvt år. På ytan en relativt smidig tjänst som, med den legendariske visionärens ord, "bara fungerar" (eller åtminstone borde den), men inuti en otämjd mekanism som ofta gör vad den vill, och utvecklarna har inget effektivt vapen mot Det.

"Allt sker automatiskt och det är väldigt enkelt att ansluta dina appar till iCloud-lagringssystemet," sa Jobs då. När utvecklarna kommer ihåg hans ord nu, måste de nog strama. "iCloud fungerade helt enkelt inte för oss. Vi spenderade verkligen mycket tid på det, men iCloud och Core Data sync hade dessa problem som vi inte kunde lösa." han erkände chefen för Black Pixel-studion som ansvarar till exempel för den välkända RSS-läsaren NetNewsWire. För henne borde iCloud ha varit den idealiska lösningen för synkronisering, särskilt i en tid då Google är på väg att stänga sin Google Reader, men satsningen på apple-tjänsten gick inte.

Ingenting fungerar

Det är förvånande att en tjänst som har över 250 miljoner användare och därmed är en av de största i sitt slag i världen har sådana problem. Vid en översiktlig titt på saken skulle man kunna peka finger åt utvecklarna, men de är oskyldiga i detta för tillfället. iCloud försöker implementera många av dem i sina applikationer, men deras försök slutar ofta i misslyckande. Eftersom iCloud har allvarliga problem med synkronisering.

[do action=”quote”]Jag kan inte ens räkna alla utvecklare som stötte på problem och till slut gav upp.[/do]

"Jag skrev om min iCloud-kod flera gånger i hopp om att hitta en fungerande lösning," skrev han utvecklare Michael Göbel. Han har dock inte hittat någon lösning, och därför kan han ännu inte marknadsföra sina applikationer, eller snarare App Store. "Jag kan inte ens räkna alla utvecklare och företag som stötte på samma problem som jag och till slut gav upp. Efter att ha förlorat hundratusentals användardata övergav de helt enkelt iCloud helt.

Apples största problem med iCloud är databassynkronisering (Core Data). De andra två typerna av data som kan synkroniseras via Apples moln – inställningar och filer – fungerar inom gränserna utan problem. Core Data beter sig dock helt oförutsägbart. Det är ett ramverk på hög nivå som låter dig synkronisera flera databaser över enheter. "iCloud lovade att lösa alla databassynkroniseringsproblem med stöd för Core Data, men det fungerar bara inte," sa en av de framstående utvecklarna, som inte ville bli namngiven för att upprätthålla goda relationer med Apple.

Samtidigt ignorerar Apple helt dessa problem, iCloud fortsätter att annonsera som en enkel lösning och användare kräver det av utvecklare. Men trots utvecklarens bästa ansträngningar försvinner användarnas data okontrollerat och enheter slutar synkroniseras. "Dessa problem tar ofta timmar att lösa, och en del kan bryta dina konton permanent." en annan ledande utvecklare lutar sig åt Apple och tillägger: "Dessutom kan AppleCare inte lösa dessa problem med kunderna."

"Vi kämpar med kombinationen av Core Data och iCloud hela tiden. Hela det här systemet är oförutsägbart, och utvecklaren har ofta begränsade möjligheter att påverka dess funktion." beskriver den tjeckiska utvecklingsstudion Tryck på Art, som bekräftade för oss att den på grund av ihållande problem överger denna lösning och arbetar på egen hand, där den kommer att använda filsynkronisering istället för databassynkronisering som sådan. Han kommer då att kunna använda iCloud för detta, eftersom filsynkronisering sker genom den utan problem. Detta bekräftas trots allt också av utvecklarna från Jumsoft: "iCloud är utan tvekan ett bra verktyg för direkt fillagring." Men Jumsoft behöver tyvärr Core Data för sin välkända Money-applikation, och detta är en stötesten.

[do action="quote"]iCloud och Core Data är alla utvecklares värsta mardröm.[/do]

Många problem härrör också från oväntade situationer som lätt kan uppstå, som när en användare loggar ut från ett Apple-ID på sin enhet och loggar in via ett annat. Apple räknar inte med dem alls. "Hur löser man problemet när användaren, som inte är inloggad på iCloud, slår på programmet, sedan ansluter till iCloud och startar programmet igen?" han frågade med en utvecklare på Apples forum.

Alla problem med iCloud kulminerar i missnöje hos appanvändare som tappar data, medan utvecklare ofta bara tittar hjälplöst. "Användare klagar till mig och betygsätter appar med en stjärna," han klagade på apple-forum, utvecklaren Brian Arnold, som fortfarande inte har fått någon förklaring från Apple om vad man ska göra med liknande problem, eller varför de överhuvudtaget inträffar. Och forumen är fulla av sådana klagomål om iCloud-synkronisering.

Vissa utvecklare tappar redan tålamodet med iCloud, och det är inte konstigt. "iCloud och Core Data är alla utvecklares värsta mardröm," sade för Gränsen icke namngiven utvecklare. "Det är frustrerande, irriterande ibland och värt oändliga timmar av felsökning."

Apple är tyst. Han kringgår problemen själv

Det är kanske inte konstigt att Apples problem med iCloud passerar som om ingenting hänt. Apple använder praktiskt taget inte den problematiska kärndatan i sina applikationer. Det finns faktiskt två iClouds – en som driver Apples tjänster och en som erbjuds utvecklare. Appar och tjänster som iMessage, Mail, iCloud backup, iTunes, Photo Stream och andra bygger på helt annan teknik än vad som är tillgängligt för tredjepartsutvecklare. Det vill säga den som det finns ständiga problem med. Applikationer från iWork-paketet (Keynote, Pages, Numbers) använder samma API som tredjepartsapplikationer, men bara för mycket enklare dokumentsynkronisering, vilket Apple är mycket noga med att få att fungera. När de släpper in iCloud och Core Data i sin app i Cupertino är de inte bättre vad gäller tillförlitlighet än tredjepartsutvecklare. Trailers-applikationen, som använder Core Data för synkronisering, talar för sig själv, och användare förlorar regelbundet vissa poster.

Men med Trailers, som inte är lika populära, är dessa problem relativt lätta att förlora. Men vad ska då utvecklarna av de mest populära applikationerna berätta för sina användare, som helt enkelt måste förlita sig på den problematiska kärndatan i iCloud, men ofta inte kan garantera den typ av funktionalitet som Apple ständigt annonserar i sina annonser? Apple kommer definitivt inte att hjälpa dem. "Kan någon från Apple kommentera den här situationen?" han frågade utan framgång på forumet, utvecklaren Justin Driscoll, som tvingades stänga av sin kommande app på grund av opålitlig iCloud.

Under året hjälper inte Apple utvecklare, så alla hoppades att något skulle lösas åtminstone vid förra årets WWDC, alltså en konferens avsedd för utvecklare, men inte ens här gav Apple mycket hjälp under enorm press från utvecklare. Till exempel gav han exempelkod som kan användas för att synkronisera kärndata, men den var långt ifrån komplett. Återigen, ingen nämnvärd hjälp. Dessutom uppmanade Apples ingenjörer utvecklare att vänta på iOS 6. "Att flytta från iOS 5 till iOS 6 gjorde saker XNUMX % bättre," bekräftat av en icke namngiven utvecklare, "men det är fortfarande långt ifrån idealiskt." Enligt andra källor hade Apple bara fyra anställda som skötte Core Data förra året, vilket tydligt skulle visa att Apple inte är intresserade av detta område. Företaget vägrade dock att kommentera denna information.

Adjö och halsduk

Efter alla växlingar som nämnts är det inte förvånande att många utvecklare tackade nej till iCloud, fast förmodligen med tungt hjärta. Det var iCloud som äntligen skulle ge något som utvecklarna längtade efter – en enkel lösning som säkerställer identiska databaser och deras ständiga synkronisering på två eller flera enheter. Tyvärr är verkligheten en annan. "När vi tittade på iCloud och Core Data som en lösning för vår app insåg vi att vi inte kunde använda den eftersom ingenting skulle fungera," sa utvecklaren av några av de mest sålda iPhone- och Mac-applikationerna.

En annan anledning till att iCloud inte är lätt att överge är det faktum att Apple lägger märke till de applikationer som använder dess tjänster (iCloud, Game Center), och helt ignorerar de som inte har något Apple i App Store. iCloud är också en bra lösning ur marknadsföringssynpunkt.

Dropbox erbjuds till exempel som ett möjligt alternativ, men det är inte längre lika användarvänligt. Dels måste användaren skapa ett annat konto (iCloud är tillgängligt automatiskt vid köp av en ny enhet) och dels krävs auktorisering innan applikationen kan fungera, vilket också misslyckas med iCloud. Och slutligen - Dropbox erbjuder dokumentsynkronisering, vilket helt enkelt inte är vad utvecklare letar efter. De vill synkronisera databaser. "Dropbox, som är den mest använda för tillfället, har bevisat sig för datasynkronisering. Men när det gäller att synkronisera databasen är vi beroende av iCloud," erkänner Roman Maštalíř från Touch Art.

[do action="quote"]Jag skulle vilja berätta för Apple att de fixade allt i iOS 7, men jag tror inte riktigt på det.[/do]

Utvecklarna av 2Do-applikationen hade dock inte tålamod, på grund av många negativa erfarenheter med iCloud provade de inte apple-tjänsten alls och kom omedelbart med sin egen lösning. "Vi använder inte iCloud på grund av alla problem. Det är ett väldigt slutet system som vi inte skulle kunna ha så mycket kontroll över som vi skulle vilja, sa utvecklaren Fahad Gillani till oss. "Vi valde Dropbox för synkronisering. Men vi använder inte dess dokumentsynkronisering, vi skrev vår egen synkroniseringslösning för det."

En annan tjeckisk studio, Madfinger Games, har inte heller iCloud i sina spel. Skaparen av de populära titlarna Dead Trigger och Shadowgun använder dock inte Apple-tjänsten av lite olika anledningar. "Vi har vårt eget molnbaserat system för att spara positioner i spelet, eftersom vi ville kunna överföra spelets framsteg mellan plattformar." David Kolečkář avslöjade för oss att på grund av utvecklingen av spel för både iOS och Android för Madfinger Games var iCloud aldrig en lösning.

Kommer det att finnas en lösning?

Allt eftersom tiden går tappar många utvecklare långsamt hoppet om att Apple ska komma med en lösning. Till exempel kommer nästa WWDC, men eftersom Apple praktiskt taget inte kommunicerar med utvecklare ens nu förväntas det inte att han ska komma till WWDC med öppna armar fulla av råd och svar. "Allt vi kan göra är att fortsätta skicka felrapporter till Apple och hoppas att de fixar dem," beklagade en icke namngiven iOS-utvecklare, med en annan som ekade hans känslor: "Jag skulle älska att berätta för Apple att de fixade allt i iOS 7 och iCloud kan äntligen användas utan problem efter två år, men jag tror inte riktigt på det." Men det blir iOS 7 som borde vara det centrala temat för årets WWDC, så utvecklare kan åtminstone hoppas.

Om Apple inte erbjuder en lösning på iCloud-problem i en ny version av sitt operativsystem kan det vara en virtuell spik i kistan för vissa projekt. En av utvecklarna, som har varit en stark supporter av iCloud fram till nu, säger: "Om Apple inte fixar detta i iOS 7, måste vi överge leveransen."

källa: TheVerge.com, TheNextWeb.com
.