Aller au contenu principal

Stockage iCloud : Drive vs. CloudKit

Dans l'écosystème iCloud d'Apple, il existe deux façons principales pour les applications de gérer les données : iCloud Drive et CloudKit. Comprendre la différence explique comment QuickPlanX gère vos projets par rapport aux applications traditionnelles basées sur des documents, comme le QuickPlan classique.

iCloud Drive (basé sur les documents)

iCloud Drive est un système de stockage basé sur les fichiers, le modèle utilisé par l'application QuickPlan classique.

  • Gestion des fichiers : Les projets sont enregistrés sous forme de fichiers de documents individuels. Vous pouvez les voir et les gérer directement dans l'app Fichiers sur iOS ou dans le Finder sur Mac.
  • Flexibilité du stockage (QuickPlan classique) : Grâce à son architecture basée sur les documents, le QuickPlan classique vous permet de choisir où vos fichiers sont stockés : sur le stockage local de l'appareil, sur iCloud Drive ou sur des services cloud tiers comme Dropbox ou Google Drive. Vous êtes responsable de l'organisation et de la sauvegarde de ces fichiers.
  • Contrôle limité de l'application : Dans un flux de travail basé sur iCloud Drive, la synchronisation en arrière-plan est principalement gérée par le système, et non par l'application. Cette dernière n'a généralement accès qu'aux documents que l'utilisateur a ouverts ou consultés explicitement. Par conséquent, sa visibilité sur le processus de synchronisation est limitée, et elle ne peut pas contrôler de manière fiable la résolution des conflits lors d'éditions simultanées sur plusieurs appareils, sauf à implémenter une gestion complexe des versions.

CloudKit (basé sur une base de données)

Le QuickPlanX moderne utilise CloudKit, un puissant service de base de données en arrière-plan.

  • Architecture de stockage : Les projets ne sont pas enregistrés sous forme de fichiers visibles dans un dossier. À la place, les données de votre projet sont stockées en toute sécurité dans la base de données CloudKit de l'application, au sein de votre compte iCloud.
  • Expérience fluide : Aucun fichier à déplacer, organiser ou supprimer accidentellement. La synchronisation s'effectue automatiquement en arrière-plan sur tous vos appareils utilisant le même identifiant Apple.
  • Contrôle plus fin de l'application : CloudKit étant basé sur une base de données, il fournit à l'application des informations structurées sur les modifications du serveur et les conflits d'enregistrement. Cela permet à QuickPlanX d'appliquer sa propre logique de résolution des conflits avec plus de précision qu'un système basé sur des fichiers. Dans la plupart des cas courants, QuickPlanX peut résoudre automatiquement les divergences ; si nécessaire, il invite l'utilisateur à prendre une décision.

Point commun : la planification de la synchronisation

Malgré leurs architectures différentes, les deux systèmes s'appuient sur Apple pour la planification de la synchronisation.

Que vous utilisiez le QuickPlan classique avec iCloud Drive ou le QuickPlanX moderne avec CloudKit, la synchronisation réelle en arrière-plan est strictement gérée et régulée par le système d'exploitation Apple (iOS/macOS) et les serveurs iCloud. Des facteurs comme le niveau de batterie, les conditions réseau et la gestion des ressources système déterminent quand les données sont envoyées ou reçues. L'application ne peut pas garantir que la synchronisation se termine immédiatement, ni contourner le planificateur système. Si les architectures CloudKit permettent à l'application de solliciter une synchronisation de manière plus proactive, l'exécution finale reste soumise aux priorités système d'Apple.

Résumé des différences clés

  • Architecture : iCloud Drive est centré sur les fichiers et les versions, opérant sur des documents entiers ; CloudKit est centré sur la base de données et les enregistrements, traitant des objets de données structurés.
  • Contrôle de l'application : La synchronisation iCloud Drive est dominée par le système et offre à l'application une visibilité des conflits plus grossière ; CloudKit fournit à l'application des informations structurées sur les conflits pour un contrôle plus fin.