# プロファイルの管理

> Create and manage multiple player profiles on a single device to allow players to sign in with different accounts.

プレイヤーはプロファイルを使用して、1 つのデバイス上で複数のアカウントにサインインできます。プロファイルは `PlayerPrefs` に保存された値に分離レベルを追加します。プロファイルは自動的には永続化されません。開発者がそれらをどのように管理するかを決定する必要があります。

### プロファイルの切り替え##switch-profiles

現在のプロファイルを切り替えるには、プレイヤーがサインアウトする必要があります。`AuthenticationService.Instance.SwitchProfile(profileName)` を使用します。プロファイル名に使用できるのは英数字、"-"、"\_" のみで、長さは最大 30 文字までです。

プレイヤーがサインアウトしていない場合、`SwitchProfile` は `AuthenticationException` をスローします。エラーコードは `AuthenticationErrorCodes.ClientInvalidUserState` です。

無効な名前を使用した場合、`SwitchProfile` は `AuthenticationException` をスローします。エラーコードは `AuthenticationErrorCodes.ClientInvalidProfile` です。

### 現在のプロファイル##current-profile

現在のプロファイルを表示するには、`AuthenticationService.Instance.Profile` を使用します。

### デフォルトのプロファイル##default-profile

初期化オプションでプロファイルが指定されていない場合は、`default` という値が使用されます。

### 初期化時にプロファイルを設定する##set-the-profile-at-initialization

任意で `UnityServices` の初期化時にプロファイルを設定することもできます。プロファイルが指定されていない場合、`AuthenticationService` には値 `default` が使用されます。

```cs
async Task InitializeUnityServices()
{
    var options = new InitializationOptions();
    options.SetProfile(“test_profile”);
    await UnityServices.InitializeAsync(options);
}
```

##
