iCloud reste un casse-tête pour les développeurs

Florian Innocente |
iCloud est un casse-tête sans solution pour les développeurs qui souhaitent l'intégrer à leurs applications pour synchroniser des bases de données. C'est le constat général qui ressort de conversations menées par The Verge avec des éditeurs de logiciels iOS et OS X, ainsi qu'au travers de billets de blogs. Sur le papier, iCloud est une solution idéale pour tenir à jour des données et réglages entre plusieurs appareils utilisant la même application. Une solution quasiment clef en main pour répondre à un besoin extrêmement complexe.

C'est d'ailleurs la promesse qui avait été faite par Steve Jobs lors de la conférence des développeurs 2011 : « iCloud est intégré avec vos applications et tout se déroule automatiquement » avant de le ponctuer par son fameux « It just works » (ça marche tout simplement).

Mais deux ans après, cela ne marche toujours pas si bien, voire très mal, et plusieurs développeurs, ouvertement ou de manière anonyme, s'en sont plaints à The Verge.

Par exemple Daniel Pasco, le patron de Black Pixel (Versions, Kaleidoscope), qui prépare une refonte du lecteur de RSS NetNewsWire, un type de logiciel qui a tout à gagner à disposer d'un système de synchronisation entre ses versions OS X et iOS. Le dysfonctionnement et le mystère des API d'iCloud proposées aux développeurs a eu raison de sa patience « iCloud n'a pas fonctionné chez nous. On y a passé un temps incroyable, mais iCloud et la synchronisation Core Data ont des problèmes qu'il nous est tout simplement impossible de résoudre ». L'un de ses confrères, Michael Göbel abonde : « J'ai réécrit plusieurs fois mon code iCloud en espérant trouver une solution qui marche, et visiblement Apple n'a pas fait cet effort. iCloud et Core Data sont une plaisanterie. »



Un autre développeur, Brian Arnold de MathWorks, constate aussi les dégâts, que ce soit en temps passé à dépanner des utilisateurs confrontés à des dysfonctionnements, pertes de données ou en mauvaises notes laissées sur l'App Store « J'attends toujours une réponse sur ce qui peut poser problème et comment y remédier ».

On peut aussi citer le cas du lecteur de podcasts Instacast qui a finalement abandonné la synchronisation iCloud fin 2012 pour développer son propre système ou GoodReader qui a fait machine arrière l'été dernier.

Dans son billet de février dernier, Michael Göbel met en exergue le fait que le marketing d'Apple donne à penser aux utilisateurs que l'absence d'iCloud dans les applications ou les dysfonctionnements sont du ressort des développeurs. Alors que ces derniers sont laissés dans le flou sur la manière de faire fonctionner ce système ou sur les perspectives de le voir enfin corrigé.

Ce sentiment que la faute en revient aux développeurs est conforté par le bon fonctionnement d'iCloud dans d'autres contextes de synchronisation. Lorsqu'il s'agit de documents, les choses se passent plutôt bien « Il faut bien comprendre une chose, la perception du bon fonctionnement d'iCloud par les utilisateurs est largement basée sur des applications qui n'utilisent pas Core Data lors de la synchronisation » observe un autre développeur.



Lorsqu'il s'agit de synchroniser des documents et non des bases de données avec Core Data, ces bugs ne se présentent pas. Les applications de bureautiques d'Apple utilisent ce schéma et dans ce cas il n'y a pas véritablement de soucis, le mécanisme de synchronisation des documents créés par un Keynote ou un Pages étant plus simple. En revanche, lorsqu'il s'agit de bases des données, même des applications Apple sont touchées. Exemple est donné avec iTunes Movie Trailers sur iOS (pour les bandes-annonces, disponible sur l'App Store américain seulement) qui perd régulièrement les favoris des utilisateurs.

Apple n'a pas non plus prévu de scénarios passablement complexes où un utilisateur jonglera entre plusieurs identifiants Apple pendant l'utilisation d'une app. Un autre développeur parle des bugs d'iCloud, mais aussi de sa probable inadéquation structurelle à gérer de grosses bases.

À ces désagréments techniques s'ajoutent les maigres chances pour une application qui n'utilise pas une synchronisation par iCloud d'être mise en avant par Apple sur l'App Store, avec les bénéfices commerciaux que cela entraîne.

Apple reste aussi imperméable aux errements constatés dans son système et sourde aux questions des développeurs. iOS 6 a pu amener beaucoup d'améliorations dans iCloud comparé à iOS 5, mais avec un résultat malgré tout encore bien insuffisant.

Une autre frustration exprimée, en plus de l'indifférence d'Apple sur le sujet, est l'absence de véritable solution de remplacement, alors qu'iCloud laissait entrevoir la perspective d'un remède à la complexité de la synchronisation de bases de données sur iOS.

Dropbox est parfait pour les documents, mais il n'est pas non plus idéal pour les bases de données. En outre, iCloud a comme avantage son intégration au système et sa transparence, alors qu'il faudra d'abord demander à un utilisateur qui n'a pas de compte Dropbox, ou qui n'en veut pas, d'en créer un. Une étape qui rend l'utilisation d'une telle fonction nettement moins conviviale.

Entre les développeurs qui s'arrachent les cheveux, ceux qui ont jeté l'éponge sur cette fonction et ceux qui vont jusqu'à envisager de laisser tomber iOS, le seul recours est la patience. Sauf à tenter de créer sa propre solution, mais le sujet est complexe. La prochaine WWDC et l'arrivée du successeur d'iOS 6 restent les seuls espoirs pour une amélioration de cette situation qui perdure depuis deux ans.
Tags
avatar eTeks | 
Le jour où Apple donnera un accès public à sa base de bugs, un grand pas sera déjà fait envers la reconnaissance du travail des développeurs Mac OS X et iOS. Fermer cet accès montre le peu d'estime que cette société porte pour les développeurs.
avatar Anonyme (non vérifié) | 
Pour ça marche avec les logiciels Apple alors ???
avatar Anonyme (non vérifié) | 
@TheOh! : Pourquoi
avatar Anonyme (non vérifié) | 
@TheOh! : Relis et tu vas comprendre !!! LoL
avatar MacGyver | 
@TheOh! : bof, ca marche pas du feu de dieu yen a un qui doit se retourner dans sa tombe
avatar Anonyme (non vérifié) | 
Parce que perso je n'ai jamais de bogues (documents ou autres) avec les app Apple..
avatar Anonyme (non vérifié) | 
@Mac*Gyver : Si ça fonctionne bien .
avatar Anonyme (non vérifié) | 
@TheOh! : +1
avatar Anonyme (non vérifié) | 
@eTeks : Apple a beaucoup d'estime pour les développeur . Et dire qu'icloud est un nid de bug est faux .
avatar iPadOne | 
le problèmes des développeurs c'est qu'ils veulent se faire du fric sur le dos d'Apple, soit le soucis n'est pas là mais ils veulent le faire a leurs sauce et sans forcer. On a les même problèmes avec le web : celui ne jure que par Drupal, celui la en CSS3 , celui-ci en flash et l'autre en Java ..... bref un foutoir et des mecs qui râlent a tour de bras sans jamais vouloir suivre une norme si ils y sont pas obligé
avatar ovea | 
iCloud sur OSx Server, c'est possible ?
avatar YARK | 
Moi, MobileMe me suffisait amplement et en plus j'avais droit à une galerie photos qui était sympa et facile d'approche. Apple a décidé pour moi que je n'y avait plus droit. On aurait pu avoir le choix entre ces deux solutions ou les deux, mais non : interdit... Ou l'art de faire ch... des consommateurs qui n'ont rien demandé.
avatar philippl | 
De toute façon Apple code avec les pieds. Ils font du bon matos, mais le soft n'est ni fait ni à faire. Une honte, le meilleur et pire exemple étant iTunes, une usine à gaz au fonctionnement totalement aléatoire. GO les fanboys :-)
avatar elamapi | 
@ceux qui demande pourquoi ça fonctionne sur les App Apple: Lisez l'article ..... @iPadOne: Tu peux me donner le nom de l'appli qui utilise coreData que t'as codé ? Non, parce que si tu veux faire un test, implementes juste l'exemple fournis avec Xcode sans le modifier (donc directement fournis par Apple) et tu verras par toi même les dégats. Si l'exemple d'Apple ne fonctionne pas, comment peux tu oser dire que c'est de la faute des devs ....
avatar Benz Hine | 
Mrdodo, l'attaché de presse d'apple est de sortie et dément en vrac les arguments des developpeurs professionnels.
avatar sekhmet | 
iCloud fonctionne globalement très bien . Surtout considérant les services antérieurs il y a une nette amélioration. Surtout si on considère le nombre d'utilisateur. Après j'ai pas tester l'API...
avatar TimeMachine | 
Ca marche peut être bien entre un Mac et un iPhone. J'ai 4 macs. Et iCloud ignore la plupart du temps mon Mac Pro. Les signets ne se mettent pas à jour. Les onglets non plus. Par contre sur iPad / iPhone, ça très rapide et la synchro se fait toujours. Personnellement je regrette MobileMe niveau synchro. Si elle ne se faisait pas, y avait moyen de l'activer soi-même dans les préférences MobileMe. iCloud c'est quand il veut bien et sur quel ordinateur il veut bien. Sur les apps, ça n'a jamais marché sur PULP. Une catastrophe. Mes RSS ne se synchronisaient jamais et ceux rajoutés sur un ordi n'apparaissaient jamais sur mon iPad. Bref. iCloud c'est bien joli dans leur pubs commerciales mais chez moi entres macs, c'est vraiment du n'importe quoi. Et pourtant lors de Moutain Lion chaque ordi a été réinstallé en clean install.
avatar lmouillart | 
Si l'on compare le cloud d'Apple à celui d'Amazon, Google, ou Microsoft cela reste quand même une vaste fumisterie : tant pour les SLA qu'en fonctionnalités.
avatar kubernan | 
Ça ne m'étonne pas vraiment : depuis iOS 5 Core Data a été agrémenté de nouveautés et d'un modèle de gestion asynchrone des lectures/écritures. Or, tout cela fonctionne assez mal. D'ailleurs il n'y a quasiment pas d'exemple de code officiel (fourni par Apple) reposant sur ces nouveaux principes. Rien qu'en local c'est galère à gérer, alors si l'on y ajoute la synchro...
avatar Anonyme (non vérifié) | 
@Benz Hine : De mon point de vu utilisateur , iCloud fonctionne bien , j'ai toujours eu toutes les données de synchronisé sans problème en toute transparence et fluidité . Je ne suis en rien un commercial d'Apple seulement un type content de son matos et du soft qui tourne dessus .
avatar xavier25 | 
@iPadOne Les devs ne veulent pas faire du fric sur le dos d'apple. On veut avant tout sortir l'application que l'on s'est projeté à faire. Et faire une application (à but lucratif ou non) ça demande du temps (et donc), de l'argent. On râle pas pour râler, mais quand Apple met à dispo des frameworks buggés et que t'essaies de t'en servir pensant que les erreurs viennent de toi, au bout du compte c'est rageant. Perso j'ai bien étudié la question avant d'y mettre les pieds et j'avais décidé de me passer d'icloud pour le moment.
avatar Anonyme (non vérifié) | 
Comment ont fait les équipes d'infinity blade alors ?
avatar Phoenixxu | 
@philippl : Je ne sais pas ce que tu fais avec iTunes mais ce n'est pas une usine à gaz. Une usine à gaz c'est quand par exemple HTC décide de faire un iTunes-like...
avatar Anonyme (non vérifié) | 
@philippl : iTunes est pas si mal comparé aux solutions des concurrent ...

Pages

CONNEXION UTILISATEUR