Recall API

Recall API를 사용하면 게임에서 PGS (Play 게임즈 서비스)를 기존 로그인 메커니즘(예: Google 로그인)을 원활하게 동기화하고 플레이어의 온보딩 앱 제거를 줄이기 위해 전체 기기에서 로그인 정보 제공 1일 차 유지율을 높일 수 있습니다 API는 사용자의 Play 게임즈 서비스 (PGS) 계정과 Google 서버에 리콜 토큰을 저장하여 게임 내 계정을 사용할 수 있습니다. 이 Recall API의 사용 방법에 관한 샘플 시나리오는 다음과 같습니다.

  1. 사용자는 개발자가 사용자 진행 상황을 추적하는 ID 시스템을 보유하고 다른 인증 방법과 함께 PGS를 사용하여 사용자를 게임에 로그인시키는 게임을 플레이합니다. 이 예에서는 사용자가 PGS 계정 Laura에 로그인하고 개발자의 ID 시스템 Racer94로 게임 내 계정을 만듭니다. 사용자가 게임을 플레이하면 개발자의 게임 서버가 진행 상황을 동기화합니다.

    사용자가 PGS 및 게임 내 계정으로 로그인함

  2. 별도로 개발자는 사용자의 게임 내 계정에 해당하는 리콜 토큰을 Google에 저장합니다. Google은 사용자의 PGS 프로필에 대해 해당 리콜 토큰을 자동으로 저장합니다.

    게임 서버는 Google 서버에 리콜 토큰을 저장함

  3. 이제 사용자는 Google Play 게임즈에서 게임을 플레이하기로 결정합니다. PC에서 있습니다. 사용자가 PGS 계정으로 자동 로그인됩니다. 게임 클라이언트가 이 PGS에 진행 상황이 있는지 확인합니다. 있습니다. 그러면 게임 서버가 Google에 쿼리하여 이 PGS 계정에 액세스할 수 없습니다. 토큰이 있으므로 Google은 리콜 토큰을 다시 보내고 게임 서버는 이 토큰을 사용하여 사용자의 연결된 계정을 찾습니다. Racer94로 돌아가 진행 상황을 복원합니다. PGS로 로그인하는 것은 사용자의 진행 상황을 앱에서 복원해 주는지 사용자 이름 또는 비밀번호를 입력해야 하는 사용자 또한 개발자는 기존 ID 시스템으로 PGS 로그인을 사용하고 Google 플레이어 진행 상황과 PGS 계정 간의 링크를 저장합니다.

    게임 서버가 리콜 토큰으로 진행 상황을 복원함

위의 예에서 볼 수 있듯이, 다음과 같이 Recall API를 사용할 수 있습니다.

  • 사용자가 게임 내 중 하나로 로그인하면 Google에 토큰 저장 있습니다.
  • 게임 내 복원을 위해 사용자의 토큰 검색 있습니다.

리콜 토큰 외에도 Recall API에는 안정적인 식별자가 필요합니다. 캐릭터(캐릭터라고 함)에 게임을 플레이하여 카디널리티 제약조건. 어떤 캐릭터나 을 개발자의 앱 내에서 사용자의 게임 내 계정을 나타내는 라벨로 복구하는 데 사용되는 키로 사용되는 리콜 토큰 사용자의 게임 내 계정을 게임에 연결합니다. 캐릭터 및 토큰 값은 재사용하면 안 됩니다. 서로 다른 PGS 프로젝트 또한 리콜 토큰은 시간이 지남에 따라 변경될 수 있지만 캐릭터는 안정적이어야 합니다. 사용자의 게임 내 계정에 따라 다릅니다.

카디널리티 규칙

Recall API는 PGS 프로필과 게임 내 계정 간에 1:1 관계를 적용합니다(카디널리티 규칙이라고 함). 이 경우 하나의 캐릭터는 하나의 PGS 프로필에만 연결될 수 있고 하나의 PGS 프로필은 하나의 캐릭터에만 연결될 수 있습니다. 캐릭터는 게임 내 계정의 안정적인 식별자로 사용됩니다. 리콜 토큰은 시간이 지남에 따라 변경될 수 있기 때문입니다.

PGS 프로필에 연결된 캐릭터도 시간이 지남에 따라 변경될 수 있습니다(다양한 게임 내 계정이 PGS 프로필에 연결되어 있기 때문).

리콜 토큰 저장 및 검색을 위한 자세한 기술 흐름

이 섹션에서는 게임 클라이언트, 게임 서버 리콜 토큰을 저장하고 검색할 때 다음과 같이 Google 서버에 저장됩니다.

1단계: PGS 사용자 로그인 및 세션 ID 검색

게임은 PGS SDK를 초기화하고 PGS로 사용자 로그인을 시도합니다.

사용자가 PGS로 로그인함

사용자가 로그인 상태라고 가정하고 게임 클라이언트의 게임 SDK에서 세션 ID를 요청하고 Google의 OAuth 백엔드에서 OAuth 2.0 토큰을 요청합니다. 세션 ID 및 OAuth 2.0 토큰은 Google 게임 백엔드와 통신하는 데 사용됩니다.

개발자가 세션 ID를 요청함

2단계: 사용 가능한 리콜 토큰 검색

PGS 사용자 계정과 연결된 리콜 토큰을 요청합니다. 토큰이 있으면 3a단계로 진행하여 진행 상황을 복원합니다. 신규 사용자이고 토큰이 없는 경우 3b단계로 진행하여 새 토큰을 저장합니다.

개발자가 리콜 토큰을 검색함

3a단계: 토큰이 있는 경우 진행 상황 복원

토큰이 있는 경우 토큰을 검색 및 복호화하고 사용자 데이터를 복원합니다.

개발자가 리콜 토큰에서 데이터를 복원함

3b단계: 토큰이 없는 경우 토큰 저장

토큰이 없으므로 진행 상황이 복원되지 않습니다. 사용자는 개발자의 ID 시스템으로 로그인하거나 계정이 없는 경우 새 계정을 만듭니다.

사용자가 게임 내 계정으로 로그인함

사용자의 게임 내 계정을 인코딩하는 암호화된 리콜 토큰을 만들고 세션 ID 및 OAuth 2.0 토큰과 함께 Google에 전송합니다. 이 시점에서 Google은 전송된 리콜 토큰과 플레이어의 PGS 계정 간에 연결을 만듭니다.

개발자가 리콜 토큰을 저장함

PGS 프로필이 없는 사용자를 위한 흐름

아직 PGS 프로필을 만들지 않은 사용자의 리콜 토큰을 저장할 수 있습니다. 프로필 없는 모드를 사용합니다. 하지만 다음과 같은 두 가지 중요한 주의사항이 있습니다.

  • PGS 프로필이 없는 사용자의 토큰은 가져올 수 없습니다. 프로필 사용자가 게임에 로그인하려고 하면 자동으로 생성 메시지가 표시됩니다. 해야 합니다.
  • 추가 가이드라인을 따라야 합니다. 다음 항목에 대해 설명하는 적절한 알림이 있는지 확인하고 적절한 최종 사용자 동의를 얻어야 합니다. <ph type="x-smartling-placeholder">
      </ph>
    • Play 게임즈 계정 사용을 위해 Google과 데이터 공유 연결 기능을 제공합니다.
    • 이 공유를 관리할 수 있는 설정(예: Play 게임즈) 설정을 변경할 수 있습니다.
    • Google 개인정보처리방침 정책을 참조하세요.

토큰 및 캐릭터 쌍 저장

PGS 프로필이 없는 사용자가 게임을 엽니다.

  1. PGS 프로필이 없는 사용자가 프로필 없는 리콜이 있는 게임을 엽니다. 사용 설정되어 있습니다.
  2. 게임 SDK가 자동 로그인을 트리거하는데, 이 로그인은 사용자가 다음과 같은 이유로 실패합니다. PGS 프로필이 없습니다.
  3. 게임 SDK는 사용자에게 게임이 완료되었음을 알리는 스낵바를 표시합니다. Google과의 통합에 대해 알아봅니다 이 스낵바는 실행 가능합니다. 사용자가 사용 중지할 수 있습니다. 프로필을 만들 때까지 재현율을 유지합니다.
  4. 게임에서 리콜 액세스를 요청합니다. PGS에서 리콜 액세스 요청을 거부합니다. 기기에 PGS 프로필이 있거나 Google Play 기기의 계정. 이 경우 게임은 PGS
  5. 사용자가 게임 내 계정으로 로그인하면 게임에서 토큰을 생성하고 캐릭터 쌍입니다. 게임 이 쌍을 Google에 저장합니다. 이 경우 게임에서 나중에 다른 게임 내 계정에 로그인할 수 없습니다.

새 기기에서 게임 실행

  1. PGS 프로필이 없는 사용자가 프로필 없는 리콜이 사용 설정된 게임을 엽니다. 할 수 있습니다.
  2. 게임이 토큰 저장에 설명된 대로 프로필 없는 리콜 토큰을 기록합니다. 캐릭터 쌍입니다
  3. 사용자가 동일한 계정을 사용하는 다른 기기에서 같은 게임을 엽니다. 설정할 수 있습니다
  4. 게임 SDK가 프로필 생성을 트리거합니다. 사용자가 검토하고 거부할 수 있습니다. 리콜 토큰입니다. 이때 사용자는 PGS 프로필을 만듭니다.
  5. PGS 자동 로그인이 완료되고 게임은 인증 상태를 확인합니다.
  6. 게임은 평소와 같이 사용자의 리콜 토큰을 검색합니다.

다음 단계

Recall API를 클라이언트 및 게임 서버와 통합하려면 이 구현 가이드를 참조하세요.