Passer au contenu principal
Cette rubrique fournit un exemple de code pour gérer un changement de statistique basée sur les événements. Les exemples sont des fragments de code C++ qui utilisent l’API C plate de l’API des services XBOX (XSAPI). XSAPI transmet les mises à jour de statistiques au moyen du service Real-Time Activity (RTA) et gère les abonnements RTA pour vous.

Avant de commencer

Les fragments de code partagent une même portée et supposent ce qui suit :
  • xboxLiveContext est un XblContextHandle pour l’utilisateur connecté. Pour en créer un, appelez XblContextCreateHandle.
  • xboxUserId est l’ID utilisateur XBOX (XUID) de type uint64_t du joueur dont vous voulez recevoir les mises à jour de statistiques.
  • scid est un const char* qui contient l’ID de configuration de service (SCID) de votre titre.
  • TotalPuzzlesSolved est un exemple de nom de statistique. Remplacez-le par le nom d’une statistique basée sur les événements configurée pour votre titre.
  • LogToScreen est une fonction de journalisation de style printf de votre application.
Pour recevoir des notifications sur les changements de statistiques basées sur les événements
  1. Ajoutez un gestionnaire de changement de statistique.
  2. Suivez les statistiques dont vous voulez recevoir les mises à jour.
Pour nettoyer
  1. Arrêtez le suivi des statistiques.
  2. Supprimez un gestionnaire de changement de statistique.

Ajouter un gestionnaire de changement de statistique

Inscrivez un gestionnaire d’événements pour les notifications de changement de statistique à l’aide de l’exemple de code suivant. Le gestionnaire d’événements reçoit un objet XblStatisticChangeEventArgs. Si xboxLiveContext ou le gestionnaire est null, XblUserStatisticsAddStatisticChangedHandler retourne 0 et n’inscrit pas le gestionnaire.

Suivre les statistiques dont vous voulez recevoir les mises à jour

Votre gestionnaire reçoit des mises à jour uniquement pour les statistiques que vous suivez. Appelez XblUserStatisticsTrackStatistics avec les utilisateurs et les noms de statistiques dont vous voulez recevoir les mises à jour. Vous pouvez modifier l’ensemble des statistiques suivies à tout moment, indépendamment de vos gestionnaires.
XblUserStatisticsSubscribeToStatisticChange et XblUserStatisticsUnsubscribeFromStatisticChange sont dépréciées. Elles fonctionnent toujours, mais elles seront supprimées dans une version future et, selon les paramètres de votre compilateur, leurs appels peuvent produire des avertissements de dépréciation. Utilisez plutôt XblUserStatisticsTrackStatistics et XblUserStatisticsStopTrackingStatistics.

Arrêter le suivi des statistiques

Lorsque vous n’avez plus besoin des mises à jour de certaines statistiques, appelez XblUserStatisticsStopTrackingStatistics avec les mêmes utilisateurs, le même SCID et les mêmes noms de statistiques que ceux que vous avez suivis.
Pour arrêter plutôt les mises à jour de toutes les statistiques que vous suivez pour un ensemble d’utilisateurs, appelez XblUserStatisticsStopTrackingUsers au lieu de XblUserStatisticsStopTrackingStatistics.
XSAPI compte les requêtes de suivi. Si vous suivez la même statistique pour un utilisateur plus d’une fois, appelez une fonction d’arrêt du suivi le même nombre de fois pour arrêter les mises à jour.

Supprimer un gestionnaire de changement de statistique

Supprimez un gestionnaire d’événements pour les notifications de changement de statistique à l’aide de l’exemple de code suivant.

Voir aussi

Dernière modification le 30 octobre 2026