GPGS(Google Play Games Services) 완벽 연동 치트시트

Summary
1인 개발 30일 완성 룰을 지키기 위한 GPGS 원터치 세팅 가이드. (세팅할 때마다 헤매지 않기 위해 기록함)
카테고리
Private Projects
Original creation date
생성일
Mar 8, 2026 02:19 PM
태그
gpgs

🏗️ STEP 1. GCP 프로젝트 생성 및 할당량 확인 (가장 먼저 할 일)

GPGS를 연동하려면 게임 전용 GCP 프로젝트를 최우선으로 생성해야 합니다.

1-1. 새 프로젝트 만들기

  1. Google Cloud Console 접속 및 로그인.
  1. 화면 상단 네비게이션 바의 [프로젝트 선택] 드롭다운 클릭 ➡️ 팝업창 우측 상단의 [새 프로젝트(New Project)] 클릭.
  1. 프로젝트 이름: Drill Rush 입력. (위치/조직은 기본값으로 두어도 무방)
  1. [만들기] 버튼 클릭 후 프로젝트가 완전히 생성될 때까지 대기.

💡 1-2. 구글 계정 당 프로젝트 생성 갯수 제한 (Quota)

  • GCP는 무한정 프로젝트를 만들 수 있는 것이 아닙니다. 구글 계정이나 결제 계정에 따라 기본적으로 생성할 수 있는 프로젝트 수(보통 10~30개 내외)에 제한이 있습니다.
  • 남은 갯수 확인법: '새 프로젝트 만들기' 화면 상단에서 구글 계정에 남은 잔여 프로젝트 할당량(Remaining Project Quota)을 직접 확인할 수 있습니다.
  • 한도 초과 시: 제한에 도달하면 '할당량 관리(Manage Quota)' 링크를 통해 구글에 프로젝트 한도 증가를 요청하는 양식(Form)을 제출해야 합니다. 1인 개발 규모에서는 금방 도달할 수치는 아니니 "이런 제한이 있다" 정도만 메모해 두세요!

🔐 STEP 2. OAuth 동의 화면 (Consent Screen) 구성

  1. 생성한 Drill Rush GCP 프로젝트가 선택된 상태에서 ➡️ [API 및 서비스] ➡️ [OAuth 동의 화면] 클릭.
  1. User Type: 외부(External) 선택 후 만들기.
  1. 필수 입력 항목:
      • 앱 이름: Drill Rush (실제 유저에게 노출됨)
      • 사용자 지원 이메일: 내 이메일 주소
      • 개발자 연락처 정보: 내 이메일 주소
  1. 나머지(범위, 테스트 사용자 등)는 전부 빈칸으로 두고 [저장하고 계속] 연타.
  1. 🚨 중요: 대시보드에서 [앱 게시(Publish App)] 버튼을 눌러 반드시 '테스트' 상태를 '프로덕션'으로 변경할 것! (안 하면 테스터 외 로그인 불가)

🔑 STEP 3. 사용자 인증 정보 (OAuth 클라이언트 ID) 생성

💡 핵심 포인트: 안드로이드는 반드시 출시용(App Signing)테스트용(Upload Key) 2개의 SHA-1 인증서를 모두 등록해야 개발 중에도 기기에서 로그인이 가능함.
  1. [API 및 서비스] ➡️ [사용자 인증 정보] ➡️ 상단 [+ 사용자 인증 정보 만들기] ➡️ [OAuth 클라이언트 ID]
  1. 애플리케이션 유형: Android
  1. 패키지 이름: com.YourCompany.DrillRush (유니티 Player Settings와 동일하게)
  1. SHA-1 인증서 지문 입력 (2개 각각 생성):
      • ① 출시용 ID 만들기: 구글 플레이 콘솔 ➡️ [설정] ➡️ [앱 무결성] ➡️ [앱 서명] 탭의 '앱 서명 키 인증서' SHA-1 복사.
      • ② 테스트용 ID 만들기: 유니티 빌드 시 사용하는 Keystore의 SHA-1을 추출해서 복사.

⚙️ STEP 4. 구글 플레이 콘솔 (Play Console) 연동

  1. Play 콘솔 ➡️ [Play 게임즈 서비스] ➡️ [설정 및 관리] ➡️ [설정] 이동.
  1. [사용자 인증 정보] 탭 ➡️ [사용자 인증 정보 추가] 버튼 클릭.
  1. GCP 프로젝트 연결 메시지가 뜨면, Step 1에서 만든 Drill Rush 프로젝트를 선택해 연결.
  1. 유형을 Android로 선택 후, 방금 GCP에서 만든 출시용 OAuth 클라이언트(App Signing SHA-1)를 선택하고 저장.

🏆 STEP 5. 리더보드(Leaderboards) & 업적(Achievements) 생성

5-1. 리더보드 (최고 깊이 경쟁)

  1. Play 콘솔 ➡️ [Play 게임즈 서비스] ➡️ [리더보드] ➡️ [리더보드 만들기]
  1. 이름: Max Depth
  1. 형식: 숫자 / 정렬 순서: 큰 값이 더 좋음 (더 깊이 내려갈수록 랭킹 상승)
  1. 아이콘: 512x512 픽셀 아이콘 등록 후 저장.

5-2. 업적 (달성 목표)

  1. Play 콘솔 ➡️ [Play 게임즈 서비스] ➡️ [업적] ➡️ [업적 만들기]
  1. 이름/설명: (예: 마그마 도달!, 설명: Camp 2 마그마 기지에 도달했습니다.)
  1. 상태: 공개 / 증분 업적 여부: 단순 도달은 아니오.
  1. 아이콘 등록 후 저장.

🧩 STEP 6. Unity GPGS 플러그인 연동 및 C# 초기화

6-1. XML 리소스 유니티에 넣기

  1. Play 콘솔 리더보드/업적 탭에서 상단의 [리소스 받기] 클릭 후 나오는 XML 코드 전체 복사.
  1. 유니티로 이동 ➡️ 상단 메뉴 [Window] ➡️ [Google Play Games] ➡️ [Setup] ➡️ [Android Setup]
  1. Resources Definition 텍스트 박스에 복사한 코드를 붙여넣고 [Setup] 클릭.

6-2. C# 기본 초기화 코드 뼈대

using UnityEngine; using GooglePlayGames; using GooglePlayGames.BasicApi; public class GPGSManager : MonoBehaviour { void Start() { // 1. GPGS 초기화 및 활성화 PlayGamesPlatform.DebugLogEnabled = true; PlayGamesPlatform.Activate(); // 2. 로그인 시도 SignInToGooglePlay(); } public void SignInToGooglePlay() { PlayGamesPlatform.Instance.Authenticate(SignInInteractivity.CanPromptAlways, (result) => { if (result == SignInStatus.Success) { Debug.Log("GPGS 로그인 성공!"); } }); } // 리더보드 점수 보고 public void ReportScoreToLeaderboard(long score) { if (Social.localUser.authenticated) { Social.ReportScore(score, GPGSIds.leaderboard_max_depth, (bool success) => { Debug.Log("리더보드 업데이트: " + success); }); } } // 리더보드 UI 띄우기 public void ShowLeaderboardUI() { if (Social.localUser.authenticated) { PlayGamesPlatform.Instance.ShowLeaderboardUI(GPGSIds.leaderboard_max_depth); } } }