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

Stéphane Moussie |

« 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.

avatar Filou53 | 

Très bête question:

est-ce que Mail utilise le machin en question pour synchroniser les messages sur le Cloud ?

Si ce n'est pas le cas, Apple ferait bien de le mettre rapidement en oeuvre.
Me concernant, cela devient catastrophique.
Je perds de plus en plus souvent les messages que j'envoie !
(heureusement, jusqu'ici, il semble qu'ils arrivent quand même à leur destinataire)

Mais cela n'a peut-être rien à voir ???

avatar iGeek07 | 

@Filou53 :
Logiquement non, ils utilisent l'IMAP qui est un standard… ce qui te permet de profiter de tes mails (même de ta messagerie icloud) sur n'importe quelle application autre qu'Apple…

avatar Filou53 | 

alors ils sont sans doute un souci avec leur utilisation d'IMAP.

Et apparemment, je ne suis pas le seul à rencontrer ce problème

avatar Domsware | 

En tout cas plus aucun soucis de synchronisation entre macs et iBidules avec Day One et Mindnode Pro depuis.

avatar Titouchris89 | 

C'est la où Agilbit devrait peut-être plus communiquer aux utilisateurs de choisir tel ou tel service de synchronisation. Si on utilise 1passorwd sur Windows et que l'on a le client iCloud, le tds des différents clouds, etc...

avatar bugman | 

"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."

Comment font ils chez AgileBits ? Les fichiers contenant les mdp qu'ils sauvegardent ne sont pas cryptés ?

avatar Ali Ibn Bachir Le Gros | 

Oui, elles sont chiffrées, mais chiffrées ou non ça reste des données. C'est des suites d'Octets que CloudKit manipule, n'envoyant que celles qui ont été modifiées.

Lorsqu'il synchronise un fichier, un outil de synchronisation comme Dropbox ou CloudKit transmet la ou les parties du fichier qui ont été modifiées, sans rien savoir de la signification des chaînes d'Octets qu'il manipule, ou de la nature du fichier.

avatar bugman | 

@Ali Ibn Bachir ... : Oki. Merci pour la précision. Ce qui me surprend c'est qu'il me semblait que la clé de chiffrement était construite grâce au mot de passe principale de l'application et que celle-ci pouvait dû coup être modifié. Je voyais donc, un seul et unique fichier. Certainement une erreur de ma part. J'irais voir l'API à l'occasion.

Edit : En fait c’était très con comme question, j'ai ma petite idée du fonctionnement. Encore merci.

avatar Ali Ibn Bachir Le Gros | 

La clé de chiffrement est en effet construite par le mot de passe maître, une seule fois lors de la création de celui-ci.

Je ne sais pas trop à quoi tu penses en disant qu'elle pouvait être modifiée, en fait elle ne peut pas l'être.

avatar bugman | 

Je pensais qu'en modifiant le mot de passe principal cela générait une nouvelle clé (et donc un le chiffrement). Mais même là, après réflexion, je pense que cela ne serait pas un problème.

avatar WebOliver | 

Et iTunes Match, ça utilise CloudKit?

avatar crash_47 | 

Effectivement pour 1password, j'étais synchroniser via iCloud en son temps mais vu les problèmes rencontrés, je suis passé à Dropbox et je n'ai plus de problème du tout. J'essayerai de repasser a iCloud.
Si je comprend bien iCloud, iCloud kit et iCloud Drive sont 3 systèmes différents ?

avatar Darth Philou (non vérifié) | 

@crash_47 :
ICloud c'est le nom de l'offre cloud d'Apple.
CloudKit est la bibliothèque d'API pour permettre aux développeurs d'applications de profiter des services Cloud.
CloudDrive est le système qui permet de stocker des documents (fichiers) dans le Cloud d'Apple.

CONNEXION UTILISATEUR