> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Démarrage rapide des données des joueurs

> Le démarrage rapide de PlayFab Player Data montre pas à pas comment créer, lire et mettre à jour des champs clé-valeur personnalisés de joueur à partir des SDK client et serveur.

# Démarrage rapide : définir et obtenir des données de joueur

<Note>
  Dans les API PlayFab, les noms de fonctions utilisent le terme **UserData**. Dans **Game Manager**, ce concept est désigné par **Player Data**. Ils sont identiques et interchangeables.
</Note>

Commencez à utiliser PlayFab Player Data. Ce démarrage rapide vous montre comment définir et récupérer des données de joueur à l'aide de C# dans Unity et de PlayFab CloudScript.

Les données des joueurs sont des informations qui s'appliquent à un joueur individuel ou à un groupe de joueurs (données partagées) et que PlayFab stocke sous forme de paires clé/valeur (KVP). Cet article couvre les appels d'API client, qui peuvent être effectués en toute sécurité depuis n'importe quel processus ou contexte. Il couvre également les appels d'API serveur, qui ne doivent être effectués *que* depuis un processus de serveur dédié que vous contrôlez, ou depuis un appel CloudScript soigneusement sécurisé. Les API serveur nécessitent votre clé secrète de développeur. Cette clé ne doit pas être fournie à votre client ni publiée avec celui-ci.

## Exigences

* Un [compte de développeur PlayFab](https://developer.playfab.com).
* Une copie installée de l'éditeur Unity. Pour installer Unity pour un usage personnel au moyen de Unity Hub, ou Unity+ pour un usage professionnel, consultez [Télécharger Unity](https://unity3d.com/get-unity/download).

<Note>
  Le SDK PlayFab Unity3D prend en charge l'éditeur Unity version 5.3 (publiée en décembre 2015) et ultérieure.
</Note>

* Un projet Unity, qui peut être :
  * Un tout nouveau projet. Pour plus d'informations, consultez [Démarrer Unity pour la première fois](https://docs.unity3d.com/550/Documentation/Manual/GettingStarted.html).
  * Un projet de tutoriel guidé. Pour plus d'informations, consultez [Bien démarrer avec Unity](https://learn.unity.com/).
  * Un projet existant.
* Le SDK PlayFab Unity3D.

Pour plus d'informations sur la configuration du SDK PlayFab Unity3D, consultez l'article [Démarrage rapide : bibliothèque cliente PlayFab pour C# dans Unity](/fr-CA/services/playfab/sdks/unity3d/quickstart). Cet article vous permet de vérifier que vous disposez d'un compte PlayFab et que vous avez correctement configuré le SDK Unity3D.

## À propos des exemples de code

Les exemples C# de cet article sont écrits pour le SDK Unity. Le SDK Unity utilise un modèle piloté par les événements pour gérer les tâches non synchrones. Pour exécuter l'exemple de code avec le SDK C#, vous devez modifier le code afin d'utiliser un modèle de tâches asynchrones (async Task). Le nom des méthodes à modifier est suivi du suffixe Async dans leur signature. Par exemple, SetObject dans le SDK Unity devient SetObjectAsync dans le SDK C#. Pour plus d'informations, consultez [Programmation asynchrone avec async et await](https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/concepts/async/).

Bien que vous puissiez utiliser un projet Unity existant, ce démarrage rapide suppose que vous utilisez l'exemple créé à l'issue du [Démarrage rapide : bibliothèque cliente PlayFab pour C# dans Unity](/fr-CA/services/playfab/sdks/unity3d/quickstart).

## Données des joueurs dans Game Manager

Vous pouvez toujours obtenir et définir des données de joueur au moyen de Game Manager en procédant comme suit.

* Ouvrez **Game Manager**. Si vous ne le connaissez pas, consultez le [démarrage rapide de Game Manager](/fr-CA/services/playfab/live-service-management/gamemanager/quickstart).
* Sélectionnez l'onglet **Players**.
* Sélectionnez le nom du **joueur** pour accéder à l'onglet **Players Account**.
* Sélectionnez l'onglet **Player Data** pour afficher ses données.

## Ajouter une méthode pour définir et récupérer les données du joueur

1. Dans l'éditeur Unity, ouvrez votre exemple de projet.

2. Dans la fenêtre **Project**, ouvrez **Assets** > **Scripts**, puis ouvrez le script PlayFabLogin.

3. Dans Visual Studio, ajoutez ce qui suit à l'instruction using :

   `using System.Collections.Generic;`

4. Pour définir des données de joueur, ajoutez une méthode `SetUserData` à la classe `PlayFabLogin`. `SetUserData` utilise la méthode [UpdateUserData](xref:titleid.playfabapi.com.client.playerdatamanagement.updateuserdata) pour créer ou mettre à jour les données du joueur connecté.

   La méthode crée (ou met à jour, si les paires clé-valeur (KVP) existent déjà) les KVP `Ancestor` avec la valeur `Arthur`, et `Successor` avec la valeur `Fred`.

   ```csharp theme={null}
   void SetUserData() {
       PlayFabClientAPI.UpdateUserData(new UpdateUserDataRequest() {
           Data = new Dictionary<string, string>() {
               {"Ancestor", "Arthur"},
               {"Successor", "Fred"}
           }
       },
       result => Debug.Log("Successfully updated user data"),
       error => {
           Debug.Log("Got error setting user data Ancestor to Arthur");
           Debug.Log(error.GenerateErrorReport());
       });
   }
   ```

5. Pour obtenir des données de joueur, ajoutez une méthode `GetUserData` à la classe `PlayFabLogin`. `SetUserData` utilise la méthode [GetUserData](xref:titleid.playfabapi.com.client.playerdatamanagement.getuserdata) pour récupérer les données du joueur spécifié.

   ```csharp theme={null}
   void GetUserData(string myPlayFabId) {
       PlayFabClientAPI.GetUserData(new GetUserDataRequest() {
           PlayFabId = myPlayFabId,
           Keys = null
       }, result => {
           Debug.Log("Got user data:");
           if (result.Data == null || !result.Data.ContainsKey("Ancestor")) Debug.Log("No Ancestor");
           else Debug.Log("Ancestor: "+result.Data["Ancestor"].Value);
       }, (error) => {
           Debug.Log("Got error retrieving user data:");
           Debug.Log(error.GenerateErrorReport());
       });
   }
   ```

6. Appelez `SetUserData` et `GetUserData` dans la méthode `OnLoginSuccess`.

   ```csharp theme={null}
   private void OnLoginSuccess(LoginResult result) {
       Debug.Log("Congratulations, you made your first successful API call!");
       SetUserData();
       GetUserData(result.PlayFabId);
   }
   ```

7. Enregistrez le fichier.

## Exécuter l'exemple

Dans l'éditeur Unity, sélectionnez le bouton de lecture. En cas de réussite, les résultats des appels s'affichent dans la fenêtre de la console.

## Voir aussi

* [Définir les données internes d'un joueur](/fr-CA/services/playfab/player-progression/player-data/how-to-set-internal-player-data)
* [Obtenir les données internes d'un joueur](/fr-CA/services/playfab/player-progression/player-data/how-to-get-internal-player-data)
* [Définir les données en lecture seule d'un joueur](/fr-CA/services/playfab/player-progression/player-data/how-to-set-read-only-player-data)
* [Obtenir les données en lecture seule d'un joueur](/fr-CA/services/playfab/player-progression/player-data/how-to-get-read-only-player-data)
* [Modifier les données en lecture seule ou internes d'un joueur depuis CloudScript](/fr-CA/services/playfab/player-progression/player-data/how-to-modify-read-only-internal-player-data)
* [Démarrage rapide des données de titre](/fr-CA/services/playfab/live-service-management/game-configuration/titledata/quickstart)
* [Utilisation des données d'éditeur](/fr-CA/services/playfab/live-service-management/game-configuration/titledata/using-publisher-data)
* [Démarrage rapide de CloudScript](/fr-CA/services/playfab/live-service-management/service-gateway/automation/cloudscript/quickstart)


## Related topics

- [Démarrage rapide des données de titre](/fr-CA/services/playfab/live-service-management/game-configuration/titledata/quickstart.md)
- [Démarrage rapide des échanges](/fr-CA/services/playfab/economy-monetization/economy/trading/trading-quickstart.md)
- [Démarrage rapide des classements](/fr-CA/services/playfab/community/leaderboards/quickstart-leaderboards.md)
- [Démarrage rapide des entités](/fr-CA/services/playfab/live-service-management/game-configuration/entities/quickstart.md)
- [Démarrage rapide des rapports](/fr-CA/services/playfab/data-analytics/learn-data/reports/quickstart.md)
