PartyManager::CreateLocalUser
ネットワーク操作とチャット操作を実行するときにローカル プレイヤーを表すために使用されるローカル ユーザー オブジェクトを作成します。
構文
PartyError CreateLocalUser(
PartyString entityId,
PartyString titlePlayerEntityToken,
PartyLocalUser** localUser
)
パラメーター
entityId
PartyString
ローカル ユーザーに関連付ける PlayFab エンティティ ID。
titlePlayerEntityToken
PartyString
ローカル ユーザーに関連付ける PlayFab エンティティ トークン。
localUser
PartyLocalUser**
ライブラリに割り当てられた出力
出力ローカル ユーザー オブジェクト。
戻り値
PartyError
c_partyErrorSuccess
ローカル ユーザーの作成に成功した場合。それ以外の場合はエラー コード。 人間が判読できる形式のエラー コードは、GetErrorMessage() を介して取得できます。
解説
このメソッドは、PlayFab エンティティ ID を entityId
として、PlayFab エンティティ トークンを titlePlayerEntityToken
として取得します。 これらの値に対して同期検証は実行されません。ただし、 entityId
の長さが c_maxEntityIdStringLength
以下である点が異なります。 ライブラリが、ネットワークの作成、ネットワークへの認証、音声からテキストへの変換などユーザーの認証または承認を必要とする操作を実行するとき、パーティー サービスは、トークンが有効で期限切れではなく、提供されたエンティティ ID に関連付けられていて、操作の実行を承認されていることを検証します。 これらの条件が満たされないと、操作は失敗します。
PlayFab エンティティ ID と PlayFab エンティティ トークンは、PlayFab ログイン操作の出力から取得し、このメソッドへの入力として提供できます。 PlayFab エンティティ ID は、title_player_account
型である必要があります。これは、ほとんどの開発者にとって、最も従来的な方法で「プレイヤー」を表します。 サポートされている他の種類のエンティティを表すユーザーを作成するには、代わりに CreateLocalUserWithEntityType() を使用します。
指定された entityId
と titlePlayerEntityToken
は、Initialize() に渡されたのと同じタイトル ID を使用して取得されている必要があります。
パーティー ライブラリは、CreateNewNetwork() や PartyNetwork::AuthenticateLocalUser() などローカル ユーザーの認証または承認を必要とする今後の操作で使用するために、指定した PlayFab エンティティ トークンのコピーを作成します。 この呼び出しに提供されたトークンの有効期限が切れているか無効な場合、有効なトークンを必要とする操作は失敗します。
PartyLocalUser::UpdateEntityToken() を呼び出して、新しい有効なトークンをパーティ ライブラリに提供できます。
呼び出し元は、このメソッドおよび PartyLocalUser::UpdateEntityToken() に指定されたエンティティ トークンの有効期限を監視する責任があります。 トークンの有効期限が近づいたり過ぎたりした場合は、PlayFab のログイン操作を行って新しいトークンを取得し、PartyLocalUser::UpdateEntityToken() を呼び出してパーティー ライブラリに提供する必要があります。 前に供給されたトークンの有効期間が半分を過ぎた時点で、新しいトークンを取得することをお勧めします。 低電力状態になるなどしてアプリケーションの実行が長時間停止し、トークンが期限切れ前に更新されない可能性があるプラットフォームでは、実行が再開された時点でトークンの期限切れをチェックする必要があります。
c_maxLocalUsersPerDeviceCount
PartyLocalUser オブジェクトのみが同時に存在できます。 別のローカル ユーザーの作成がその制限を超えた場合、このメソッドは同期的に失敗します。
正常に返されると、このメソッドは、以前に GetLocalUsers() によって返された配列のメモリを無効化し、新しいユーザーを同期して配列に追加します。
StartProcessingStateChanges() でも、配列のメモリを無効化します。 返された localUser
オブジェクトは、 PartyDestroyLocalUserCompletedStateChange が生成され、オブジェクトを参照するすべての状態変化が FinishProcessingStateChanges() に返されるまで有効になります。
要件
ヘッダー: Party.h
関連項目
PartyManager
PartyDestroyLocalUserCompletedStateChange
PartyManager::Initialize
PartyManager::GetLocalUsers
PartyManager::CreateLocalUserWithEntityType
PartyManager::DestroyLocalUser
PartyManager::CreateNewNetwork
PartyNetwork::AuthenticateLocalUser
PartyNetwork::RemoveLocalUser
PartyNetwork::CreateInvitation
PartyNetwork::RevokeInvitation
PartyNetwork::CreateEndpoint
PartyLocalUser::UpdateEntityToken
PartyLocalDevice::CreateChatControl