Syntaxe
Paramètres
entityId PartyString
L’ID d’entité PlayFab à associer à l’utilisateur local.
titlePlayerEntityToken PartyString
Le jeton d’entité PlayFab à associer à l’utilisateur local.
localUser PartyLocalUser**library-allocated output L’objet utilisateur local de sortie.
Valeur renvoyée
PartyErrorc_partyErrorSuccess si la création de l’utilisateur local a réussi ; sinon, un code d’erreur. La forme lisible du code d’erreur peut être obtenue via GetErrorMessage().
Remarques
Cette méthode prend un ID d’entité PlayFab commeentityId et un jeton d’entité PlayFab comme titlePlayerEntityToken. Aucune validation synchrone n’est effectuée sur ces valeurs, si ce n’est que la longueur de entityId doit être inférieure ou égale à c_maxEntityIdStringLength. Lorsque la bibliothèque effectue des opérations nécessitant l’authentification ou l’autorisation de l’utilisateur, comme la création d’un réseau, l’authentification dans un réseau ou la transcription de la parole en texte, le service Party vérifie que le jeton est valide, n’a pas expiré, est associé à l’ID d’entité fourni et est autorisé à effectuer l’opération. Si ces conditions ne sont pas remplies, l’opération échoue. Un ID d’entité et un jeton d’entité PlayFab peuvent être obtenus à partir du résultat d’une opération de connexion PlayFab, puis fournis en entrée à cette méthode. L’ID d’entité PlayFab doit être de type
title_player_account, qui, pour la plupart des développeurs, représente le « joueur » au sens le plus traditionnel. Pour créer des utilisateurs représentant d’autres types d’entités pris en charge, utilisez plutôt CreateLocalUserWithEntityType(). Les valeurs
entityId et titlePlayerEntityToken fournies doivent avoir été obtenues à l’aide du même ID de titre que celui transmis à Initialize(). La bibliothèque Party effectue une copie du jeton d’entité PlayFab fourni pour l’utiliser dans les opérations ultérieures qui nécessitent l’authentification ou l’autorisation de l’utilisateur local, comme CreateNewNetwork() ou PartyNetwork::AuthenticateLocalUser(). Si le jeton fourni à cet appel a expiré ou n’est pas valide pour une autre raison, les opérations qui nécessitent un jeton valide échouent. Un nouveau jeton valide peut être fourni à la bibliothèque Party via un appel à PartyLocalUser::UpdateEntityToken().
Il incombe à l’appelant de surveiller l’expiration du jeton d’entité fourni à cette méthode et à PartyLocalUser::UpdateEntityToken(). Lorsque le jeton approche de son heure d’expiration ou l’a dépassée, un nouveau jeton doit être obtenu en effectuant une opération de connexion PlayFab, puis fourni à la bibliothèque Party en appelant PartyLocalUser::UpdateEntityToken(). Nous recommandons d’obtenir un nouveau jeton lorsque le jeton fourni précédemment a atteint la moitié de sa période de validité. Sur les plateformes susceptibles de passer en mode basse consommation ou de suspendre l’exécution de l’application pendant une longue période, empêchant ainsi l’actualisation du jeton avant son expiration, l’expiration du jeton doit être vérifiée dès la reprise de l’exécution.
Seuls
c_maxLocalUsersPerDeviceCount objets PartyLocalUser peuvent exister simultanément à un moment donné. Cette méthode échoue de manière synchrone si la création d’un autre utilisateur local dépasse cette limite. En cas de retour réussi, cette méthode invalide la mémoire de tout tableau précédemment renvoyé par GetLocalUsers(), car elle ajoute de manière synchrone le nouvel utilisateur au tableau. StartProcessingStateChanges() invalide également la mémoire du tableau. L’objet
localUser renvoyé reste valide jusqu’à ce qu’un PartyDestroyLocalUserCompletedStateChange ait été généré et que tous les changements d’état faisant référence à l’objet aient été renvoyés à FinishProcessingStateChanges().
Configuration requise
En-tête : Party.hVoir aussi
PartyManagerPartyDestroyLocalUserCompletedStateChange
PartyManager::Initialize
PartyManager::GetLocalUsers
PartyManager::CreateLocalUserWithEntityType
PartyManager::DestroyLocalUser
PartyManager::CreateNewNetwork
PartyNetwork::AuthenticateLocalUser
PartyNetwork::RemoveLocalUser
PartyNetwork::CreateInvitation
PartyNetwork::RevokeInvitation
PartyNetwork::CreateEndpoint
PartyLocalUser::UpdateEntityToken
PartyLocalDevice::CreateChatControl
