Ressources tvOS et Stockage de données dans Xamarin

Cet article traite de l’utilisation des ressources et du stockage de données persistants dans une application Xamarin.tvOS.

Limitations des ressources tvOS

Contrairement aux appareils iOS, la nouvelle Apple TV fournit un stockage persistant extrêmement limité et local pour les applications ou données tvOS. Pour les éléments très petits (tels que les préférences utilisateur), votre application tvOS a toujours accès à NSUserDefaults une limite de 500 Ko de données. Toutefois, si votre application Xamarin.tvOS doit conserver de grandes quantités d’informations, elle doit stocker et récupérer ces données à partir d’iCloud.

En outre, tvOS limite la taille d’une application Apple TV à 200 Mo. Si votre application nécessite des ressources au-delà de cette taille, elles doivent être empaquetées et chargées à l’aide de ressources à la demande (jusqu’à 2 Go supplémentaires). Étant donné ces limitations, il est essentiel que vous ayez correctement le temps de télécharger des ressources supplémentaires afin de fournir la meilleure expérience pour les utilisateurs de votre application. Pour plus d’informations, consultez le Guide des ressources à la demande d’Apple.

Téléchargements non persistants

Chaque application tvOS fournit un répertoire de cache temporaire vers lequel ses ressources et ressources supplémentaires sont téléchargées. Ce répertoire sera conservé tant que l’application est toujours en cours d’exécution. Toutefois, comme Apple TV doit libérer de la place pour d’autres applications ou utilisation du système, ce cache peut être supprimé.

Par conséquent, votre application ne peut pas compter sur le contenu précédemment téléchargé disponible la prochaine fois qu’elle est lancée. Votre application Xamarin.tvOS doit toujours case activée pour l’existence de ressources requises et les télécharger selon les besoins.

Important

Même si vous avez la possibilité de télécharger d’autres ressources et ressources en fonction des besoins, Apple vous avertit de consommer tout l’espace dans le cache de votre application, car il peut entraîner des résultats imprévisibles.

Gestion des ressources

Comme indiqué ci-dessus, en raison du stockage limité et non persistant des informations disponibles pour les applications tvOS, ces restrictions nécessitent une planification minutieuse pour créer une expérience utilisateur optimale pour votre application Xamarin.tvOS.

iCloud Data Stockage

Étant donné que le stockage sur Apple TV est limité, non seulement il y a un stockage persistant très limité, local, votre application n’a aucune garantie que toutes les informations précédemment téléchargées seront disponibles la prochaine fois qu’elle est exécutée.

Par conséquent, votre application Xamarin.tvOS doit stocker toutes les données utilisateur dans un magasin de données iCloud. Apple propose deux options de stockage de données iCloud pour vos applications tvOS :

  • iCloud Key-Value Stockage (KVS) : pour de petites informations (inférieures à 1 Mo) que votre application peut nécessiter (comme les préférences utilisateur), vous pouvez utiliser iCloud KVS Stockage. Les données iCloud KVS sont automatiquement synchronisées avec le cloud et tous les appareils de l’utilisateur exécutant la même application. Pour plus d’informations, consultez la section clé-valeur Stockage de notre document Introduction à iCloud ou conception pour les données clé-valeur d’Apple dans la documentation iCloud.
  • CloudKit : pour le stockage de plus grandes informations (supérieures à 1 Mo), utilisez le CloudKit Framework d’Apple. Contrairement à iCloud KVS Stockage, les données CloudKit peuvent être partagées entre tous les utilisateurs de votre application (ainsi qu’être privées à un seul utilisateur). Pour plus d’informations, consultez notre documentation Présentation de CloudKit ou le démarrage rapide de CloudKit d’Apple.

Important

Apple fournit des outils pour aider les développeurs à gérer correctement le Règlement général sur la protection des données (RGPD) de l’Union européenne.

Ressources à la demande

Les ressources à la demande fournissent du contenu et des ressources d’application (distincts de l’offre groupée d’applications), hébergées sur l’App Store et téléchargées selon les besoins de votre application. Jusqu’à 2 Go de données supplémentaires peuvent être servies à l’aide de ressources à la demande. Ils permettent au téléchargement initial de l’application d’être plus petit (les applications tvOS sont limitées à un maximum de 200 Mo), tout en fournissant des ressources enrichies selon les besoins.

Lorsqu’une application tvOS demande des ressources à la demande, le système gère automatiquement le téléchargement et le stockage de ce contenu dans le répertoire du cache de l’application. Votre application doit attendre que ce contenu soit téléchargé et mis à disposition avant de pouvoir continuer.

Ces ressources peuvent continuer à être mises en cache sur Apple TV tout au long de plusieurs lancements de votre application, ce qui accélère le cycle de lancement. Toutefois, votre application ne peut pas compter sur tout contenu précédemment téléchargé disponible la prochaine fois qu’elle est lancée. Pour plus d’informations, consultez la section Téléchargements non persistants ci-dessus.

Vous utilisez Xcode pour créer des ensembles de contenu connexes (tels que toutes les ressources pour le niveau de jeu 2) associés à une balise de ressource donner. Plus tard, votre application demande une ressource à la demande en spécifiant cette balise de ressource. Votre application doit présenter une interface utilisateur à l’utilisateur indiquant que le contenu est en cours de téléchargement. Pour plus d’informations, consultez le Guide des ressources à la demande d’Apple.

Important

Veillez à trouver un équilibre entre le nombre de fois où l’application doit télécharger des ressources à la demande et la taille des téléchargements individuels. L’utilisateur peut devenir frustré par votre application si le jeu est interrompu constamment pour télécharger du nouveau contenu ou si un téléchargement unique prend trop de temps.

Résumé

Cet article a abordé les limitations de taille, de ressources et de stockage des données placées sur une application Xamarin.tvOS par le système tvOS. Il a présenté des options pour contourner ces limitations et suggestions pour créer une expérience utilisateur optimale pour votre application.