Skip to main content
Vous utilisez MSIXVC2? Pour comparer la taille des mises à jour entre MSIXVC et MSIXVC2, empaquetez les deux builds à l’aide de makepkg. Pour plus d’information, consultez Mises à jour de contenu avec MSIXVC2 et Prise en main de MSIXVC2 pour PC.

Vue d’ensemble

Cet article explique comment livrer des mises à jour de contenu, quels outils utiliser pour générer et mesurer les mises à jour, et comment tester les principaux scénarios de mise à jour afin d’assurer un comportement attendu et optimal.

Fonctionnement des mises à jour de contenu

Les services de jeu réduisent toujours au minimum le nombre d’octets à transférer lorsque vous fournissez une mise à jour de paquets de jeu. Cette optimisation s’applique autant aux clients sur les appareils de jeu qu’aux développeurs lors du téléversement de paquets. Le système calcule cette différence (delta) à l’aide d’algorithmes qui, de façon générale, tentent de maximiser les correspondances de segments de 4 Kio entre deux paquets. Le système encode ce delta dans des fichiers .xsp (plan de streaming de mise à jour). Grâce à ces fichiers, le système sait exactement quels octets télécharger à partir du réseau et comment les appliquer à toute version existante possible du paquet. Pour simuler et tester avec précision le comportement des mises à jour delta pendant le développement, utilisez les options makepkg appropriées pour créer les paquets. Utilisez également les commandes appropriées pour installer et mettre à jour les paquets.

Créer une mise à jour basée sur une version précédente du paquet

Utilisez makepkg pack pour créer des paquets. Pour créer un paquet qui utilise un paquet précédent, utilisez le paramètre /priorpackage :
Le paquet précédent doit avoir la même identité de paquet que le paquet que vous créez, telle que définie dans le fichier microsoftgame.config. La commande crée un fichier .xsp nommé [new package name]_update-[old version number].[guid].xsp. Par exemple, 41336MicrosoftATG.ATGGameHubRequiredGame_200.0.0.0_neutral__dspnxghe87tn0_xs_update-100.0.0.0.5890f4a0-b449-4c5d-80ff-b78b19ed3439.xsp Ce fichier est le plan de streaming qui encode ce qui doit changer lors de la mise à jour de l’ancien paquet vers le nouveau. La section sur les tests des mises à jour montre comment utiliser ce plan.

Examiner la taille de la mise à jour

Lorsque vous exécutez la commande précédente, elle génère deux fichiers supplémentaires portant le même nom : un fichier .html et un fichier .json. Les deux fichiers contiennent les informations suivantes :
  1. Un résumé des octets que la mise à jour télécharge
  2. Un tableau qui résume la quantité de données que la mise à jour installe pour une balise, une langue ou un type d’appareil donné
  3. Un tableau triable des fichiers qui indique le nombre d’octets modifiés par la mise à jour et le pourcentage de la taille totale du fichier que représente cette modification
  4. Pour chaque fichier qui n’est pas mis à jour à 100 %, des liens vers des tableaux individuels qui indiquent les plages de données de chaque fichier modifiées par la mise à jour
Utilisez ces informations pour déterminer quels fichiers sont les plus modifiés dans une mise à jour. Examinez les fichiers individuels pour vérifier si la proportion et l’emplacement des modifications sont conformes aux attentes. Si certains fichiers entraînent une mise à jour plus volumineuse que d’habitude, consultez les directives de la section Créer des mises à jour efficacement. La commande packageutil compare exécutée sur les deux fichiers .xvc génère également ces mêmes fichiers et fournit un résumé des différences entre les paquets. Cette commande génère aussi le fichier .xsp.

Téléversements delta

Les téléversements vers Partner Center tirent automatiquement parti des algorithmes de calcul delta. Le delta entre votre dernier paquet téléversé (pour cette branche) et le paquet en cours de téléversement est calculé au début, de sorte que seules les données modifiées sont transférées de l’ordinateur de téléversement vers le service d’ingestion.

Tester les mises à jour

Pour valider la taille de la mise à jour telle qu’elle apparaît dans l’interface utilisateur du système, effectuez les étapes suivantes :
  1. xbapp install [old version.xvc]
  2. xbapp update [new version.xvc] (/plan=[.xsp file])
Pendant la mise à jour, accédez à la file d’attente dans l’interface utilisateur du système pour voir le nombre convivial d’octets en cours de mise à jour. Le paramètre /plan est facultatif si le fichier .xsp a été généré précédemment par d’autres commandes et qu’il se trouve au même emplacement que les fichiers .xvc. Sur PC, la commande wdapp est utilisée à la place. Les fichiers de paquet portent l’extension .msixvc, et la progression de l’installation et de la mise à jour peut être consultée dans la section de la file de téléchargement de l’application XBOX et de l’application Microsoft Store. wdapp update ne prend pas en charge le paramètre /plan. Elle utilise le fichier .xsp généré pour la version cible, s’il en existe un.

Annoncer des mises à jour

L’annonce de mises à jour diffère légèrement des autres méthodes de mise à jour. Lorsque vous annoncez une mise à jour, vous rendez la mise à jour disponible pour le jeu, ce qui entraîne un comportement précis du système. Pour annoncer une mise à jour disponible, appliquez l’indicateur /m ou /a à xbapp ou wdapp update. Ainsi, la mise à jour n’est pas appliquée avant le lancement du jeu. Lorsque cette condition se produit :
  • Console : une boîte de dialogue système s’affiche pour indiquer qu’une mise à jour est requise.
  • PC : pour les builds de développement, aucune invite système ne s’affiche et la build peut être lancée librement, sauf si elle a été installée à l’aide de wdapp install ou du programme d’amorçage. Dans ce cas, le lancement du jeu appelle le programme d’amorçage PC, qui vérifie la présence de mises à jour et vous invite à les installer.
L’annonce de la mise à jour fait également réagir certaines API XStore, ce qui permet au jeu de détecter les mises à jour disponibles. Ce comportement est surtout pertinent pour les paquets de contenu téléchargeable (DLC). Pour plus d’information, consultez Vérification des mises à jour.

Mises à jour de paquets du Store

Les exemples précédents portent sur l’installation et la mise à jour à l’aide de paquets locaux. Dans certains scénarios, vous pourriez vouloir tester des mises à jour à l’aide de paquets que vous avez téléversés vers Partner Center et téléchargés à partir du CDN du Store. Ce processus valide deux éléments : les performances lors de la mise à jour à partir du Store et l’utilisation du plan de streaming généré dans le cadre du processus d’ingestion. Malheureusement, vous ne pouvez pas effectuer une mise à jour d’un paquet local vers un paquet du Store en raison de différences de signature. Ce que vous pouvez faire, sans autre aide, c’est téléverser une seule version vers Partner Center, puis installer cette version à partir de l’application Store sur une ou plusieurs consoles de développement. Ensuite, téléversez la nouvelle version. Lorsque la nouvelle version est publiée, sur les consoles de développement où l’ancienne version est installée, vérifiez que la nouvelle version est détectée et qu’elle peut être mise à jour avec la taille delta attendue. Pour répéter ce test, avant la mise à jour, copiez l’installation de l’ancienne version sur un lecteur externe afin de pouvoir la recopier plus tard par-dessus toute nouvelle version. Si vous n’avez pas sauvegardé cette version, vous pouvez demander l’URL du CDN à partir de laquelle une version antérieure peut être installée à l’aide de xbapp install ou wdapp install. Après avoir installé une version antérieure, vous pouvez répéter le test de mise à jour.

Mises à jour hybrides par disque et CDN

Les mises à jour s’appliquent également aux installations à partir d’un disque optique. Lorsque vous effectuez une installation à partir d’un disque, le processus d’installation installe tout le contenu du disque qui n’a pas changé par rapport au plus récent paquet numérique disponible. Le processus d’installation installe simultanément le reste du contenu à partir du CDN du Store. Ce processus se produit automatiquement. Pour simuler ce processus, utilisez la commande suivante :
Servir le paquet de mise à jour au moyen d’un serveur HTTP est une solution de contournement au fait qu’une installation ne peut avoir qu’une seule source provenant du stockage local du PC de développement. Si vous gravez un disque de test à l’aide du paquet .xvc du disque, le paquet du disque peut pointer vers le chemin du disque optique.

Voir aussi

Pratiques exemplaires pour les mises à jour de contenu Vérification des mises à jour
Last modified on October 6, 2026