Scénarios et API pertinents
Pour tester les API suivantes, vous devez configurer votre environnement de développement comme décrit dans cet article :Contexte
Dans les scénarios commerciaux, un jeu doit disposer d’une licence pour pouvoir être joué. Une demande de licence vérifie la présence d’un disque installé ou envoie une requête aux services Microsoft. Une licence est accordée si le compte a droit au produit grâce à un achat direct ou à un achat satisfaisant (par exemple, au moyen d’un abonnement ou d’un ensemble). Des licences peuvent aussi être accordées dans des scénarios de partage. Pour plus d’informations sur le partage, consultez Modèle de partage de produits pour les jeux. Les scénarios de développement ne suivent pas ce comportement par défaut. Ces scénarios comprennent :- Les builds libres (déploiement F5 dans Visual Studio, xbapp/wdapp register/deploy)
- Les builds de packages locaux (makepkg, xbapp/wdapp install)
XStore fonctionnent tout de même, mais des résultats inattendus peuvent se produire lors de l’obtention de licences pour des jeux ou des produits durables.
Pour configurer une build afin qu’elle se comporte comme admissible à une licence, appliquez les bonnes valeurs d’identité au fichier MicrosoftGameConfig (comme décrit dans Activation du développement et des tests XStore).
Les étapes suivantes doivent ensuite être effectuées :
- Noter l’ID de contenu propre au jeu ou au DLC
- Appliquer l’ID de contenu à la build, selon le type de build
- Console seulement : noter l’EKBID et l’appliquer à la build
Obtenir le ContentID
Vous pouvez trouver le ContentID dans la page Packages après avoir sélectionné Show details :
L’ID de contenu des versions sandbox et commerciale peut être différent. Si vous installez une version commerciale du jeu, le produit est associé à un ID de contenu différent de celui dont vous avez besoin pour le sandbox. L’ID de contenu diffère aussi si des packages régionaux sont en jeu.
Console
Trouvez l’ID de contenu d’un package installé en exécutantxbapp list /d (ou xbapp listdlc /d pour un DLC) dans l’invite de commandes Gaming.
PC
Trouvez l’ID de contenu d’un package installé en exécutantwdapp list /d (ou wdapp listdlc /d pour un DLC) dans l’invite de commandes Gaming. Pour les packages que vous installez à partir du Store, utilisez l’indicateur /includeStore.
Appliquer l’ID de contenu à la build
Pour les builds libres, ajoutez la section suivante dans MicrosoftGameConfig :makepkg. Par exemple :
/contentid, le processus d’installation applique toute valeur ContentIdOverride disponible dans MicrosoftGameConfig lorsque vous l’installez à partir d’une source locale.
Les builds installées à partir du Store (sandbox ou commerciale) ont toujours le bon ID de contenu (tel qu’il apparaît dans Partner Center).
Appliquer l’EKBID à la build (console seulement)
Définissez l’EKBID (Escrow Key Blob ID) pour rendre la build admissible à une licence sur console. Dans la plupart des scénarios, il suffit de remplacer la valeur de test par défaut composée uniquement de zéros ou 33EC8436-5A0E-4F0D-B1CE-3F29C3955039. Remplacez l’EKBID à l’aide de la commande suivante :wdapp setekbid).
Versions d’essai et EKBID
Pour les versions d’essai, l’EKBID réel doit être appliqué. Pour trouver l’EKBID utilisé par le jeu, exécutezxbapp list /d pour une build installée à partir du Store. Pour plus d’informations, consultez Implémentation de versions d’essai pour votre jeu.
S’assurer que le compte de test a droit au produit dans le sandbox
Pour les produits publiés à la fois dans le sandbox et dans l’environnement commercial, vous pouvez utiliser DevEntitlementTool pour interroger et acquérir des droits d’utilisation pour un compte de test. La meilleure façon d’obtenir un droit d’utilisation est d’accéder directement à la page du produit dans le Store au moyen de l’activation de protocole, car les produits publiés uniquement dans le sandbox peuvent ne pas être trouvables par recherche. La console ou le PC de développement doit être réglé sur le sandbox où le jeu est publié. Pour plus d’informations, consultez la documentation de vue d’ensemble des sandboxes des XBOX services et, pour le PC, consultez Changer correctement de sandbox pour les opérations du Store. Une fois correctement connecté, utilisez le lien de protocole du Store pour accéder à la page du Store : Sur console : Utilisez l’invite de commandes Gaming :xbapp launch ms-windows-store://pdp/?productid=<storeID>
Sur PC :
Dans la boîte Exécuter (⊞Win +R) ou dans un navigateur Web
msxbox://game/?productId=<storeID> (pour afficher le produit dans l’application XBOX)
Ou
ms-windows-store://pdp/?productid=<storeID> (pour afficher le produit dans le Microsoft Store)
Une fois sur la page du Store, sélectionnez Acheter ou Obtenir pour acquérir une licence du produit pour votre compte de test. Le téléchargement et l’installation des jeux et des DLC devraient commencer automatiquement. Si vous prévoyez itérer avec des builds locales, vous pouvez annuler l’opération.
Vous devez acquérir un droit d’utilisation pour chaque compte qui exécute la build et qui s’attend à ce que les API XStore liées aux licences fonctionnent.
DLC
Pour qu’un DLC local soit admissible à une licence, l’ID de contenu doit être appliqué àmakepkg et xbapp setekbid doit être réglé sur une valeur autre que les valeurs par défaut. Seul le DLC doit être configuré pour les licences, pas le jeu de base.
Les substitutions de licence s’appliquent aux API suivantes lorsqu’elles sont appelées avec un produit durable avec package :
- XStoreAcquireLicenseForDurablesAsync
- XStoreAcquireLicenseForPackageAsync
- XStoreCanAcquireLicenseForPackageAsync
- XStoreCanAcquireLicenseForStoreIdAsync
- XStoreRegisterPackageLicenseLost
Documentation de référence de l’API
- XStore (contenu de l’API)
- Fonctions
- XStoreQueryGameLicenseAsync
- XStoreQueryLicenseTokenAsync
- XStoreQueryAddOnLicensesAsync
- XStoreRegisterGameLicenseChanged
- XStoreAcquireLicenseForDurablesAsync
- XStoreAcquireLicenseForPackageAsync
- XStoreCanAcquireLicenseForPackageAsync
- XStoreCanAcquireLicenseForStoreIdAsync
- XStoreRegisterPackageLicenseLost
- Fonctions
Voir aussi
Vue d’ensemble du commerceActivation du développement et des tests XStore
Changer correctement de sandbox pour les opérations du Store
Référence de l’API XStore
