콘텐츠로 이동

사용 예시

'계정 연동'을 앱 화면에 적용하는 흐름을 순서대로 보여 줍니다. 게스트로 시작한 사용자가 Google 계정을 연결하고, 나중에 쓰지 않는 로그인 수단을 해제하는 상황을 예로 듭니다. 각 메서드의 파라미터와 응답은 계정 연동 처리 및 조회와 계정 연동 해제를 참조하세요.

1. 계정 연동

게스트로 시작한 사용자는 기기를 잃어버리면 플레이 데이터로 돌아올 방법이 없습니다. 앱이 Google 계정 연결을 안내하면 사용자는 다른 기기에서도 같은 Player ID로 로그인해 같은 플레이 데이터를 계속 이용합니다.

  1. 사용자가 앱의 환경설정 > 계정 화면에서 Google 계정 연동을 선택합니다.
  2. 앱 클라이언트가 Google 로그인 Add-on으로 인증을 진행해 ProviderUserId와 ProviderToken을 받습니다. 인증 방법은 Google 계정으로 로그인을 참조하세요.
  3. 앱 클라이언트가 2단계에서 받은 두 값을 담아 LinkProviderAsync()를 호출합니다.
  4. 반환된 결과에 따라 화면을 처리합니다.
    • Success: 연결 완료 안내를 노출하고, 연동 목록의 Google 항목을 연동 완료 상태로 바꿉니다. 첫 연동으로 게스트 토큰이 무효가 되므로, 기기에 보관해 둔 게스트 토큰도 이 시점에 지웁니다.
    • ProviderOwnedByOther: 연결하려는 Google 계정을 다른 Player ID가 이미 쓰고 있는 상태입니다. 계정 연동 시 충돌 처리의 흐름으로 이어집니다.
    • ProviderTypeAlreadyExists: 이 계정에 다른 Google 계정이 이미 연결되어 있는 상태입니다. 기존 연결을 해제한 뒤 다시 시도하도록 안내합니다.
    • 그 밖의 결과는 계정 연동 처리 및 조회의 응답 상태를 참조하세요.

2. 계정 연동 해제

사용자가 더 이상 쓰지 않는 계정을 정리하거나, 계정이 도용될 위험이 생겨 연결을 끊고 싶을 때 해제합니다. Google과 X 계정을 모두 연동해 둔 사용자가 X 계정만 해제하는 상황을 예로 듭니다.

  1. 사용자가 환경설정 > 계정 화면에서 연동 완료 상태인 X 항목의 연동 해제를 선택합니다.
  2. 앱 클라이언트가 해제 여부를 확인하는 안내를 노출하고, 사용자가 확인하면 ProviderId에 Provider.X를 담아 UnlinkProviderAsync()를 호출합니다.
  3. 반환된 결과에 따라 화면을 처리합니다.
    • Success: 연동 목록에서 X 항목을 연동 전 상태로 되돌립니다. Google 계정은 그대로 남아 있으므로 사용자는 계속 로그인할 수 있습니다.
    • LastProviderUnlinkBlocked: 해제하면 로그인할 수 있는 수단이 남지 않는 상태입니다. 다른 로그인 수단을 먼저 연동하도록 안내합니다.
    • 그 밖의 결과는 계정 연동 해제의 응답 상태를 참조하세요.

연관 문서