# 플레이어 이름 관리

> Manage player display names and handle naming updates throughout the player lifecycle.

최소 SDK 버전: 2.5.0-pre.3. 올바른 버전을 사용해야 합니다.

플레이어는 플레이어 ID에 플레이어 이름을 연결해 ID를 커스터마이즈하고 읽기 쉬운 형태로 나타낼 수 있습니다. 플레이어 ID는 하나의 플레이어 이름에만 매핑되며, 반대의 경우도 마찬가지입니다.

## 플레이어 이름 설정##setting-player-name

플레이어가 로그인한 상태에서만 플레이어 이름을 생성하거나 업데이트할 수 있습니다. `AuthenticationService.Instance.UpdatePlayerNameAsync(playerName)`를 사용합니다. 이름에는 공백이 있어서는 안 되며 최대 길이는 50자입니다. 요청한 이름 뒤에 #와 4자리 숫자로 구성된 임의로 생성된 접미사(예: #1234)가 자동으로 추가됩니다.

플레이어가 로그인되어 있지 않거나 요청이 성공적으로 완료되지 않은 경우, `UpdatePlayerNameAsync`에서 RequestFailedException이 발생합니다. 인증 오류로 인해 업데이트가 실패하는 경우, `UpdatePlayerNameAsync`에서 AuthenticationException이 발생합니다.

## 플레이어 이름 가져오기##getting-player-name

플레이어가 로그인한 상태에서만 플레이어 이름을 가져올 수 있습니다. `AuthenticationService.Instance.GetPlayerNameAsync()`를 사용합니다. 플레이어의 이름을 찾을 수 없는 경우 임의의 이름이 반환되어 플레이어에게 할당됩니다.

플레이어가 로그인되어 있지 않거나 요청이 성공적으로 완료되지 않은 경우, `GetPlayerNameAsync`에서 RequestFailedException이 발생합니다. 인증 오류로 인해 업데이트가 실패하는 경우, GetPlayerNameAsync에서 AuthenticationException이 발생합니다.

## 캐싱##caching

`UpdatePlayerNameAsync` 또는 `GetPlayerNameAsync`가 호출될 때마다 로컬에서 프로필별로 플레이어 이름을 캐시합니다. 플레이어 이름의 캐시된 값에 액세스하려면 `AuthenticationService.Instance.PlayerName`을 사용합니다. 새 플레이어로 로그인하거나, 로그아웃하거나, 플레이어 이름이 존재하지 않을 때 `GetPlayerNameAsync`를 호출하려 시도하면 캐시된 값이 삭제됩니다. 캐시된 값이 없을 때 액세스하면 null이 반환됩니다.
