마이그레이션 개요

Google Play 게임즈 서비스, 게임 v1 SDK는 지원 중단되었으며 2025년에 Google Play 서비스 인증 SDK(com.google.android.gms:play-services-auth)에서 삭제될 Google Sign-In for Android를 사용합니다. 신규 게임 앱은 2025년까지 게임 v1을 사용할 수 있습니다. Google 로그인이 삭제되면 기존 게임 앱에 종속 항목 문제가 발생합니다. 기존 게임 앱을 게임 v1 SDK에서 게임 v2 SDK로 이전하면 Google 로그인 삭제로 인해 발생한 종속 항목 문제가 해결됩니다.

Google Play 게임즈 서비스 v1에서 v2로의 이전은 개발을 간소화하고 크로스 플랫폼 게임을 지원하는 중요한 업데이트입니다. Google Play 게임즈 서비스 v2는 플랫폼과 게임 내 ID를 분리하여 실행 시 플레이어를 자동으로 인증하는 플랫폼 수준 ID 시스템으로 작동합니다. 이제 플랫폼 ID는 기본 게임 내 계정 시스템과 분리되어 있으며, Google로 로그인 또는 독점 백엔드와 같은 도구를 사용하여 독립적으로 관리해야 합니다. Play 게임즈 서비스 v2 SDK 통합은 기존 온보딩 또는 로그인 흐름을 변경하지 않고 업적 및 리더보드와 같은 플랫폼 기능에 플레이어 ID를 사용합니다.

이 문서는 게임 애플리케이션과 다양한 SDK 간의 상호작용을 이해하는 데 도움이 됩니다. 공식 지원 중단 일정으로 인해 이 이전 가이드의 아키텍처 원칙, 경로, 플레이어 커뮤니케이션 전략을 따라야 플레이어 연속성을 보장할 수 있습니다.

SDK 상호작용

이 다이어그램은 Android의 게임 애플리케이션, Google 모바일 서비스 (GMS) 코어, Play 게임즈 서비스, 서드 파티 (3P) 게임 서버 간의 상호작용을 보여줍니다. 애플리케이션이 인증 및 게임 기능에 Google 서비스를 사용하는 동시에 별도의 서드 파티 시스템과 상호작용하는 방법을 강조합니다.

게임 v2 (현재)

Android, GMS 코어, Play 게임즈 서비스, 서드 파티 (3P) 게임 서버의 게임 애플리케이션 간 상호작용
Android, GMS 코어, Play Games 서비스, 서드 파티 (3P) 게임 서버 간의 게임 애플리케이션 상호작용 (확대하려면 클릭)

games v1 (기존)

Android, GMS 코어, Play 게임즈 서비스, 서드 파티 (3P) 게임 서버의 게임 애플리케이션 간 상호작용
Android, GMS 코어, Play Games 서비스, 서드 파티 (3P) 게임 서버 간의 게임 애플리케이션 상호작용 (확대하려면 클릭)

다음은 구성요소와 SDK에 관한 간략한 개요입니다.

  • 게임 애플리케이션.
    • Android 기반 기기에서 실행되는 사용자의 게임 애플리케이션을 나타냅니다.
    • 여기에는 두 가지 기본 구성요소가 포함됩니다.
      • 게임 v1 또는 게임 v2 SDK Play Games 서비스와 상호작용하는 클라이언트 측 SDK입니다.
      • 인증 SDK Google Play 서비스 인증 SDK는 게임 v1에서 사용자 인증 및 승인 흐름을 처리합니다.
    • 두 SDK는 AIDL (Android 인터페이스 정의 언어)을 사용하여 통신하며, 이는 서로 다른 프로세스 또는 서비스 간의 통신 패턴을 나타냅니다.
  • GMS 코어는 Google Play 서비스라고도 합니다.
    • 이는 Android의 Google 독점 레이어입니다.
    • 게임 애플리케이션은 두 개의 GMS 코어 모듈을 사용합니다.
      • 게임 모듈은 리더보드, 업적, 게임 상태 관리와 같은 게임 관련 기능을 제공합니다.
      • 인증 모듈. 사용자 인증 및 승인 작업을 처리합니다.
    • 게임 애플리케이션의 게임 및 인증 SDK는 AIDL 인터페이스를 사용하여 해당 모듈과 통신하며, 이는 프로세스 간 통신 (IPC)을 나타냅니다.

  • Play Games 서비스 게이트웨이.
    • GMS 코어와 Play Games 서비스 서버 간의 통신을 중재하는 논리적 게이트웨이입니다.
    • 서버 통신을 위한 API 요청, 데이터 변환, 인증을 처리합니다.
  • Play 게임즈 서비스 서버
    • 게임 데이터를 저장하고, 사용자 계정을 관리하고, 멀티플레이어 기능을 지원하는 Play Games 서비스 백엔드 서비스를 나타냅니다.
  • 서드 파티 게임 게이트웨이.
    • 게임 애플리케이션이 서드 파티 (3P) 애플리케이션으로 분류되는 경우 클라이언트 라이브러리는 서드 파티 게임 서버를 통해 Play 게임즈 서비스 서버와 통신합니다.
    • 애플리케이션이 다른 서비스 제공업체로도 인증할 수 있음을 의미합니다.
  • 서드 파티 게임 서버.
    • 게임 애플리케이션이 상호작용할 수 있는 선택적 외부 서버를 나타냅니다. 맞춤 기능이나 데이터 관리를 위한 것일 수 있습니다.
    • 애플리케이션과의 통신은 서드 파티 게임 게이트웨이를 통해 이루어집니다.

게임을 Play Games 서비스 v2로 이전해야 하는 이유

Play 게임즈 서비스 v1에서 v2로의 전환은 개발을 간소화하고 크로스 플랫폼 게임을 지원하는 주요 아키텍처 현대화입니다.

기본 게임 내 ID 시스템 역할을 한 v1과 달리 Play 게임즈 서비스 v2는 플랫폼과 게임 내 ID를 분리합니다. 이 시스템은 출시 시 플레이어를 자동으로 인증하여 업적, 리더보드와 같은 기능을 관리하는 플랫폼 수준 ID 시스템 역할을 합니다.

이제 Google 계정으로 로그인 또는 독점 백엔드와 같은 도구를 사용하여 게임의 기본 게임 내 계정 시스템을 독립적으로 관리해야 합니다. Play 게임즈 서비스 v2 SDK를 사용하면 게임에서 Play 게임즈 서비스 플레이어 ID를 사용하여 기존 온보딩 또는 로그인 흐름을 변경하지 않고도 플랫폼 기능에 액세스할 수 있습니다. 이 문서에서는 아키텍처 원칙, 경로, 플레이어 커뮤니케이션 전략을 다루면서 마이그레이션을 안내합니다. 공식 지원 중단 일정에 따라 준수가 플레이어 연속성에 매우 중요합니다.

플랫폼 인증과 게임 내 인증 비교

Play 게임즈 서비스 v2에서 '로그인' 개념은 다음과 같은 두 개의 별도 레이어로 분리됩니다.

  • 플랫폼 ID SDK가 플랫폼 인증을 처리합니다.
  • 인게임 ID.

플랫폼 인증

Play 게임즈 서비스는 플랫폼 참여 레이어로만 작동합니다. 특정 게임 계정 또는 인벤토리로 인증하는 대신 Google Play 게임즈 생태계 (업적, 리더보드, 이벤트)와의 플레이어 관계를 관리합니다.

  • 자동: 게임이 실행될 때 백그라운드에서 인증이 자동으로 이루어집니다. Play 게임즈 서비스 자체에는 수동 '로그인' 버튼이 필요하지 않습니다.
  • 플레이어 ID: 플랫폼 인증이 완료되면 Play 게임즈 서비스에서 안정적인 플레이어 ID를 제공합니다. 이 ID는 동일한 게임에서 기기 간에 일관되게 유지되지만 주로 업적 진행률과 같은 플랫폼 통계를 추적하는 데 사용해야 합니다.
  • 분리됨: Play 게임즈 서비스 v2는 게임 진행 상황 또는 인벤토리가 있는 플레이어의 게임 내 계정을 관리하는 게임의 기본 ID 시스템으로 사용해서는 안 됩니다. Play Games 서비스 v2는 엄격하게 보조 지속적 플랫폼 식별자로 작동합니다.

게임 내 인증

개발자는 '게임 내 계정' (IGA)을 관리해야 합니다. 게임 내에서 플레이어의 진행 상황, 인벤토리, 통화를 바인딩하는 ID 시스템입니다.

  • 기본 ID: 자체 백엔드, Google 계정으로 로그인(SiWG) 또는 기타 제공업체를 기본 로그인 방법으로 사용할 수 있습니다.
  • 독립성: 플레이어는 특정 게임 내 계정에 로그인한 상태에서 Play 게임즈 서비스 (플랫폼 ID)에 로그인하여 업적을 획득할 수 있습니다. 예를 들어 게스트 계정 또는 특정 SiWG 계정
  • 여러 인게임 계정 관리: Play Games 서비스는 플랫폼 인증만 담당하며, 게임은 플레이어의 인게임 계정 (IGA)에 대한 기본 인증을 관리합니다. 즉, 플레이어가 인게임 계정 간에 전환하는 방법에 관한 게임의 기존 흐름은 변경되지 않습니다. 플레이어가 전환하는 동안에도 Play Games 서비스를 사용하여 Play Games 플랫폼에 인증된 상태로 유지되며, 개발자는 지속적인 플레이어 ID에 대해 업적 및 기타 Play Games 서비스 기능과 관련된 데이터를 계속 전송합니다.

이전 요구사항: Play 게임즈 서비스 플레이어 ID 대신 Google Open ID로 게임 내 계정 바인딩

Play 게임즈 서비스 v1에서 개발자는 Play 게임즈 서비스를 기본 ID 제공자로 사용했습니다. 'Google Play' 버튼은 플레이어의 게임 내 계정(IGA)을 Player ID에 직접 연결합니다.

Play 게임즈 서비스 v2는 실행 시 자동, 무음 플랫폼 인증을 제공하여 이 문제를 해결합니다. 이제 결과 Player ID는 기본 계정 로그인과 별도로 리더보드 및 업적과 같은 플랫폼 기능에만 사용됩니다.

이제 게임은 'Google로 로그인' (SiWG) 또는 기타 소셜 계정과 같은 방법을 제공하는 전용 로그인 화면을 통해 기본 ID를 독립적으로 관리해야 합니다. 중요한 점은 Play Games 서비스 v2를 기본 ID 시스템으로 사용해서는 안 된다는 것입니다.

이 아키텍처 변경으로 인해 개발자가 계정 데이터를 구성하는 방식도 변경해야 합니다. 게임 내 계정 (IGA)은 기본적으로 Player ID에 바인딩되지 않아야 합니다.

이제 IGA는 Play 게임즈 서비스와 독립적인 안정적인 기본 식별자에 바인딩되어야 합니다. 권장되는 식별자는 Google 계정으로 로그인 (SiWG) 흐름에서 제공하는 Open ID입니다. 이 Open ID는 시스템 내에서 플레이어의 기본 계정에 대한 고유한 영구 키 역할을 합니다.

하지만 IGA는 Player ID에 보조 바인딩으로 여전히 연결될 수 있습니다. 이 보조 링크는 다음과 같은 두 가지 중요한 기능을 제공합니다.

  1. 이를 통해 게임은 해당 특정 플레이어와 연결된 Play Games 기능 (업적 등)의 진행 상황을 계속 추적하고 업데이트할 수 있습니다.
  2. '원활한 복원' 기능을 사용 설정하여 게임이 새 기기에서 또는 재설치 후 가장 최근에 사용한 IGA에만 플레이어를 자동으로 로그인할 수 있습니다.

이 분리된 ID 모델을 이해하는 것이 게임의 올바른 기술적 이전 경로를 파악하는 데 중요합니다.

기능 비교

다음 표에서는 게임 v1 및 게임 v2 SDK의 기능을 비교합니다.


기능

게임 v1 SDK

게임 v2 SDK

인증

play-services-auth와 통합해야 합니다.

간소화되고 능률화되었으며 play-services-auth이 필요하지 않습니다.

승인

성공, 실패, 재시도를 위한 추가 코드입니다.

SDK에서 관리

서버 액세스 토큰

GoogleSigninClient를 사용하여 추가 OAuth 2.0 범위를 요청할 수 있습니다.

인증 중 오류 처리를 위한 추가 코드

는 Play 게임즈 서비스 웹 API에 대한 서버 측 액세스를 요청할 때 GamesSignInClient를 사용하여 세 가지 기본 OAuth 2.0 ID 범위를 요청할 수 있습니다.

자세한 내용은 Play 게임즈 서비스에 대한 서버 측 액세스 서버 인증 코드 가져오기를 참고하세요.


로그인 절차

GoogleSigninClient을 사용합니다.

자동 인증 및 오류 처리를 위한 상용구 코드를 처리하기 위한 추가 코드입니다.

GamesSignInClient을 사용합니다.

SDK는 상용구 코드, 자동 인증, 오류 처리를 처리합니다. '로그인'은 다음 두 개의 개별 레이어로 구분됩니다.
  • 플랫폼 인증: Play Games 서비스 v2 SDK에서 처리합니다.
  • 게임 내 인증: 게임에서 처리합니다.

환영 팝업

추가 코드가 필요합니다.
개발자는 배치와 타이밍을 제어할 수 있습니다.

추가 코드가 필요하지 않습니다. 게임 v2 SDK로 구성된 모든 게임에서 일관된 사용자 인터페이스

종속 항목

play-services-auth가 필요합니다.

게임 모듈은 승인 및 인증을 처리합니다. 추가 종속 항목을 추가할 필요는 없습니다.
로그아웃

GoogleSignInClient.signOut을 사용합니다.

Play 게임즈 서비스 v2는 영구 플랫폼 ID이므로 로그아웃 API가 필요하지 않습니다.

여러 Play 게임즈 서비스 계정 및 게임별 설정

게임 내에서 계정 관리가 가능합니다.

사용자는 휴대기기 설정에서 Play Games 서비스 프로필을 변경할 수 있습니다. 자세한 내용은 휴대기기에서 Play Games 프로필을 전환하는 방법을 참고하세요.