> ## 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.

# 사용자-컨트롤러 연결이 언제 발생하나요?

> 사용자-컨트롤러 연결이 언제 발생하나요?

컨트롤러가 사용자에게 성공적으로 연결되면, 해당 컨트롤러의 넥서스
버튼을 누르는 것은 가이드와 대시보드에 그 사용자의 개인화된 경험을 표시합니다.
사용자는 이것이 언제 발생하는지 이해하고 제어할 수 있다고 느껴야 합니다. 사용자와 컨트롤러 간의
연결이 변경될 때마다
[XUserDeviceAssociationChangedCallback](/reference/system/xuser/functions/xuserdeviceassociationchangedcallback)이 발생합니다.

새로운 연결은 다음과 같은 방식으로 형성될 수 있습니다.

* 계정 선택기가 표시될 때마다.
* [XUserAddAsync](/reference/system/xuser/functions/xuseraddasync)를 호출할 때.
* [XUserFindControllerForUserWithUiAsync](/reference/system/xuser/functions/xuserfindcontrollerforuserwithuiasync)를 호출할 때.
* 콘솔에 로그인된 사용자가 한 명일 때, 사용자가 입력을 제공한 첫 번째 컨트롤러가
  그 사용자와 연결됩니다.
* 사용자가 연결되지 않은 컨트롤러를 사용하여 게임을 실행(또는 다시 실행)하기로 선택할 때,
  해당 컨트롤러가 자동으로 그 사용자와 연결됩니다.
* XBOX Accessories 앱을 사용하여 사용자는 지정된 컨트롤러를
  사용자와 연결할 수 있습니다. 해당 컨트롤러가 켜지면 지정된 사용자가 로그인되고
  해당 컨트롤러가 그 사용자와 연결됩니다.
* 컨트롤러에 배터리를 다시 꽂으면 자동으로 해당 컨트롤러가 이전 소유자와
  다시 연결됩니다.

다음과 같은 경우 연결이 손실될 수 있습니다.

* 컨트롤러가 꺼진 경우(예: 배터리 손실)
* 사용자가 로그아웃한 경우
* 컨트롤러가 새 사용자와 연결된 경우(원래 사용자는 이제 연결이 손실되었음을
  통보받습니다.)

다음 예제는 콘솔에서 컨트롤러 연결이 어떻게 변경될 수 있는지,
발생하는 이벤트, 그리고 게임이 취할 수 있는 액션을 보여줍니다.

| 단계 | 설명                                        | 게임 액션                                                                                  | 사용자 A 상태                                                  | 사용자 B 상태                                                        |
| -- | ----------------------------------------- | -------------------------------------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------------- |
| 1  | 사용자 A가 로그인하고 컨트롤러 1을 사용하여 게임을 실행합니다.      | 게임이 *XUserDeviceAssociationChangedCallback*에 등록하고 *XUserAddAsync*를 호출합니다.              | 사용자 A가 게임에 알려집니다. 콜백을 통해 게임은 컨트롤러 1이 사용자 A와 연결되어 있음을 압니다. | 해당 없음                                                           |
| 2  | 게임 플레이 중에 사용자가 홈으로 돌아가지만 게임은 여전히 실행 중입니다. |                                                                                        | 변경 없음                                                     | 해당 없음                                                           |
| 3  | 사용자 A가 컨트롤러 1을 사용하여 사용자 B를 로그인시킵니다.       | *XUserDeviceAssociationChangedCallback*이 발생합니다.                                        | 사용자 A는 여전히 게임에 알려져 있지만 더 이상 그와 연결된 컨트롤러가 없습니다.            | 사용자 B가 콘솔에 로그인되지만 게임에는 보이지 않습니다. 그들은 컨트롤러 1과 연결됩니다.             |
| 4  | 사용자 A가 여전히 컨트롤러 1을 사용하여 게임으로 돌아옵니다.       | 모범 사례로, 게임은 사용자 A가 컨트롤러와 적절하게 연결되도록 *XUserFindControllerForUserWithUiAsync*를 호출해야 합니다. | 사용자 A는 자신이 선택한 컨트롤러와 연결됩니다.                               | 사용자 A가 새 컨트롤러 대신 컨트롤러 1을 다시 선택했다면, 사용자 B는 더 이상 컨트롤러와 연결되지 않습니다. |

## 참고 항목

[XUserAddAsync](/reference/system/xuser/functions/xuseraddasync)

[XUserDeviceAssociationChangedCallback](/reference/system/xuser/functions/xuserdeviceassociationchangedcallback)

[XUserFindControllerForUserWithUiAsync](/reference/system/xuser/functions/xuserfindcontrollerforuserwithuiasync)


## Related topics

- [사용자](/ko/build/core-features/common/user/user-toc.md)
- [컨트롤러 손실 처리](/ko/build/core-features/common/user/users-dealing-with-controller-loss.md)
- [FMA XR-115: 플레이 중 사용자 및 컨트롤러 추가 또는 제거](/ko/publishing/certification/fma/xr-115.md)
- [FMA XR-112: 활성화 및 재개 시 사용자 및 컨트롤러](/ko/publishing/certification/fma/xr-112.md)
- [XR-112 활성화 시 사용자 및 컨트롤러 설정](/ko/publishing/certification/xr/xr-112.md)
