Ouvrir le menu principal

MacGeneration

Recherche

« CloudKit a réglé les problèmes que nous avions avec l'ancien iCloud »

Stéphane Moussie

jeudi 23 octobre 2014 à 18:00 • 13

macOS

« iCloud est intégré avec vos applications et tout se déroule automatiquement. It just works », déclarait Steve Jobs en 2011 lors de la présentation du système de synchronisation des données via iCloud. Sauf que cela n'a jamais marché correctement dans certains contextes. L'année dernière, des développeurs se sont plaints de dysfonctionnements et de l'indifférence d'Apple sur le sujet. En coulisses, la firme de Cupertino concoctait en fait un remplaçant, CloudKit, dévoilé lors de la dernière WWDC et intégré à Yosemite et iOS 8.

CloudKit a été bien accueilli par les développeurs. « CloudKit est très intéressant et je crois qu’Apple a en définitive la bonne approche avec iCloud. Auparavant, ils ont essayé d’implanter iCloud trop simplement et ils croyaient que tout allait fonctionner comme par magie. Avec CloudKit, les développeurs ont beaucoup plus de contrôle sur iCloud et cela offre beaucoup plus d’avantages que la synchronisation, avec les push notifications par exemple », commentait Luc Vandal d'Edovia, l'éditeur de Screens, peu de temps après l'annonce.

Est-ce que cet enthousiasme était justifié ? Pour AgileBits, la réponse est clairement oui. Dans un billet de blog, le créateur du gestionnaire de mots de passe 1Password fait part de sa satisfaction sur CloudKit. Mais d'abord, il revient sur l'ancien système de synchronisation :

C'était de la pure magie. Pour synchroniser avec iCloud, la "seule" chose que l'application avait à faire était d'enregistrer ses fichiers dans un dossier spécial et le système s'occupait du reste. [...] Quand la magie opérait, c'était génial. Mais quand ça ne marchait pas, c'était très frustrant, car il n'y avait aucun moyen de trouver pourquoi.

Comme d'autres éditeurs, AgileBits a essayé de trouver des rustines, sans vraiment de succès. Pour que les utilisateurs ne s'inquiètent pas trop de synchronisations trop longues, 1Password affichait un message indiquant que les données seraient disponibles sur les autres terminaux « dans quelques minutes », mais en réalité l'éditeur n'avait aucune idée du temps que cela prendrait.

Puis est arrivé CloudKit. « La plus grosse différence avec le système de synchronisation original d'iCloud, c'est qu'il n'y a pas de magie », annote AgileBits. Et d'expliquer le nouveau procédé :

Au lieu d'écrire des fichiers en local et d'attendre qu'ils apparaissent comme par magie sur les autres appareils, l'application fait simplement une requête pour mettre à jour ses données sur le serveur. Cela demande aux développeurs d'écrire plus de code, mais le résultat final est incomparablement meilleur.

Pour prendre un exemple concret, 1Password 5 sait maintenant si les éléments ont été mis à jour correctement sur le serveur et sont disponibles sur les autres terminaux. « Si l'action échoue, l'app fournit un message d'erreur détaillé qui explique la raison du raté, comme un problème de réseau, un serveur en panne ou un stockage saturé. »

Et les avantages ne s'arrêtent pas là. AgileBits souligne, entre autres, que CloudKit stocke des données plutôt que des fichiers, ce qui permet à l'application de faire des mises à jour partielles — plus besoin d'avoir à uploader un fichier en entier. En conclusion, « il était impossible de ne pas utiliser CloudKit dans 1Password 5 ». Mais aussi fiable et rapide qu'il soit, CloudKit reste limité aux systèmes d'Apple. Pour une application comme 1Password qui est disponible sur plusieurs plateformes (OS X, iOS, Android et Windows), une solution de synchronisation multiplateforme (Dropbox par exemple) est toujours indispensable.

Rejoignez le Club iGen

Soutenez le travail d'une rédaction indépendante.

Rejoignez la plus grande communauté Apple francophone !

S'abonner