스트리밍은 대부분의 브라우저와
Developer 앱에서 사용할 수 있습니다.
-
App Store Connect API로 Game Center 관리하기
App Store Connect API를 사용하여 App Store Connect 외부 웹상에서 Game Center 구성을 자동화는 방법에 대해 알아보세요. App Store Connect API로 목표 달성과 순위표를 만들고 그룹을 통해 이를 관련 게임 간에 공유하는 방법을 살펴보세요. 아울러 멀티플레이어 게임에서 플레이어 매칭을 활성화하고 구성하는 방법도 알아보세요.
리소스
관련 비디오
Tech Talks
WWDC22
WWDC20
-
다운로드
안녕하세요 저는 App Store Connect 팀의 소프트웨어 엔지니어 Hubert입니다
Game Center는 플레이어의 참여를 증진하는 도구입니다 App Store Connect에서 Game Center를 설정 관리하는 방법은 이미 알고 계실 겁니다
이 세션에서는 App Store Connect API로 Game Center를 관리하는 방법을 설명합니다 Game Center는 App Store Connect API에 새로 추가되었습니다 개발자는 여러 플랫폼에 걸쳐 Game Center 구성을 자동화 및 동기화할 수 있습니다
먼저 App Store Connect API로 사용할 수 있는 Game Center 리소스를 소개하겠습니다 그 다음 이 API를 사용하여 새 목표 달성의 생성을 자동화하는 예제를 보여드리고 앱 사이에 공유할 수 있는 순위표를 사용하여 게임 그룹을 생성하는 과정을 설명하겠습니다 그리고 멀티플레이어 호환성을 구성해 매칭 기능을 구현합니다 App Store Connect API의 Game Center를 알아보기 위해 Game Center의 핵심 구성요소를 살펴보겠습니다
Game Center는목표 달성과 순위표를 통해 App Store상의 게임에서 플레이어의 참여를 유도합니다
목표 달성은 게임 내 목표를 제공하여 더 많은 콘텐츠를 탐색할 수 있도록 합니다 화면에서 보시다시피 저는 4명의 인어를 더 만나야 Light of Prometheus 목표를 달성할 수 있습니다 순위표는 친구와의 경쟁 현황을 추적할 수 있도록 해줍니다 샌프란시스코 베이에서 저는 친구 8명 중 2위입니다 제가 1위를 차지하려면 게임으로 돌아와 친구의 점수를 능가해야 합니다
App Store Connect API는 Game Center 세부사항이라는 신규 리소스를 통해 앱에 모든 Game Center 구성을 연결합니다 이 API를 사용하여 ‘The Coast’ 게임에서 새 목표 달성과 순위표를 구성해 보겠습니다 먼저 ‘The Coast’의 새 목표부터 설정합니다 게임에서는 근사한 장소를 항해할 수 있습니다 플레이어가 게임에서 첫 항해를 하면 달성되는 목표를 어떻게 생성하는지 보여드리죠 목표를 생성하기 전에 Game Center 세부사항 리소스를 새로 생성해야 합니다 이 리소스는 앱과 목표 달성을 연결하는 다리 역할을 합니다
여기서는 POST 요청을 사용하여 Game Center 세부사항을 생성합니다 게임의 앱 ID ‘123’을 Game Center 세부사항의 관계로 설정합니다 리소스가 생성되면 새로운 Game Center 세부사항 ID가 응답으로 반환됩니다 이 ID는 다음 단계에서 목표를 생성할 때 사용합니다
이제 첫 항해 시 달성되는 목표를 생성할 수 있습니다 이전 단계의 ID를 Game Center 세부사항의 관계로 설정합니다
목표를 생성하면 새로 생성된 목표 달성 ID도 반환됩니다 이 ID를 기억해 두었다가 다음 단계에서 목표 달성 현지화를 생성할 때 사용합니다
현지화는 플레이어가 설정해 둔 언어로 목표 달성의 세부 정보를 표시하기 위해 필요합니다 설명은 플레이어의 사용 언어로 목표 달성 방법을 안내합니다
목표 달성은 지원되는 언어별로 현지화할 수 있습니다 이 목표 달성에 2개의 언어를 생성하겠습니다 영어(캐나다) 프랑스어(캐나다)입니다 먼저 영어(캐나다) 현지화를 생성하겠습니다 보시다시피 이 리소스는 이전 단계의 목표 달성 ID에 관계로 생성합니다
다음은 프랑스어(캐나다) 현지화를 생성하겠습니다
여기에서도 동일한 이전 단계의 목표 달성 ID를 사용하여 연결합니다
현지화가 생성되면 영어(캐나다) 현지화 ID를 기록해 두겠습니다 프랑스어(캐나다)도 마찬가지입니다
Game Center에 있는 목표 달성 아이콘 이미지는 플레이어가 목표 달성을 완료하면 표시됩니다 현지화를 생성한 다음에는 현지화별로 이미지를 추가합니다 여기서는 영어, 프랑스어에 각각 다른 이미지를 적용합니다
현지화 이미지를 업로드하려면 애셋 예약이 필요합니다 그러려면 영어 현지화에 연결된 이미지 리소스를 생성합니다
응답의 uploadOperations 속성은 자산 업로드에 사용할 수 있는 요청 작업을 포함합니다
curl을 사용하여 uploadOperations 속성에 제공된 URL에 이미지 파일을 업로드하겠습니다
업로드가 완료된 후 이미지 리소스를 업데이트하고 uploaded 속성을 true로 설정하여 애셋 예약을 커밋할 수 있습니다
목표 달성을 설정하고 나면 TestFlight에서 테스트해 보는 것이 좋습니다 developer.apple.com/kr/testflight에서 TestFlight와 Game Center의 사용 방법을 알아보세요
목표 달성의 구성, 테스트와 심사에 제출할 준비가 됐습니다
릴리즈 리소스를 생성하여 Game Center 세부사항에 목표 달성을 첨부해야 합니다 또한 새 App Store 버전을 위한 Game Center를 활성화하려면 관련 Game Center 앱 버전을 생성해야 합니다
릴리즈를 생성하려면 Game Center 디테일 관계 Game Center 목표 달성 관계가 필요합니다
enabled 속성을 true로 설정하고 App Store 버전을 연결하여 새로운 Game Center 앱 버전을 생성합니다
이제 심사를 위해 목표 달성을 제출할 차례입니다 App Version 페이지의 App Store Connect에 방금 생성한 목표 달성 ‘First Sail!’이 제출 준비 중 상태로 첨부되어 있습니다 릴리즈를 생성할 때 같이 준비된 것입니다 이 App Store 버전을 심사를 위해 제출할 수 있으며 승인을 받으면 이 목표 달성이 공개됩니다
App Store Connect API의 Game Center 리소스로 목표 달성을 설정하는 방법을 요약하겠습니다 앱과 목표 달성을 연결하는 새 Game Center 세부정보를 생성합니다 다음으로 현지화 및 이미지를 포함한 목표 달성을 생성했습니다 TestFlight로 새 목표 달성을 테스트한 후 릴리즈를 생성하고, App Store 버전에 Game Center를 활성화했습니다
이제 여러 앱에서 순위표를 공유하는 방법을 소개합니다
‘The Coast’는 멀티플레이어 게임으로 플레이어 점수를 기록하는 다양한 순위표가 있습니다 친구들은 순위표에서 서로의 점수를 깨며 경쟁합니다 친구의 순위가 더 높아지면 알림이 트리거되어 플레이어의 게임 참여를 유도합니다
본 예제의 ‘The Coast’에는 스핀오프 시리즈 ‘The Coast - Blood Moon’이 있습니다 이 두 게임에서 누적 항해 횟수를 기록하는 순위표를 생성 및 공유하여 플레이어가 항해 횟수를 늘릴 수 있게 해보겠습니다
목표를 생성했을 때 Game Center 세부사항과 연결했던 것처럼 순위표도 Game Center 세부사항에 직접 연결할 수 있습니다 두 앱 사이에 순위표를 공유하려면 순위표와 Game Center 세부사항을 연결하는 Game Center 그룹을 생성해야 합니다
본 예제에서는 ‘The Coast’와 ‘The Coast - Blood Moon’이 순위표를 공유하도록 동일한 그룹에 추가합니다
먼저 새 Game Center 그룹을 생성합니다
그리고 그룹 ID를 기록해 두었다가 Game Center 세부사항과 순위표를 연결할 때 사용합니다
다음으로 미리 생성해 놓은 Game Center 세부사항을 패치합니다
방금 생성한 Game Center 그룹에 관계를 추가하겠습니다 ‘The Coast - Blood Moon’에도 이 단계를 반복합니다
이제 ‘The Coast’ 플레이어의 누적 항해 횟수를 기록하는 순위표를 만들 수 있습니다
두 게임에서 모두 사용할 수 있게 이 순위표를 Game Center 그룹에 연결하겠습니다 순위표에 현지화, 이미지 릴리즈도 생성해야 합니다
두 게임이 모두 사용하는 그룹 순위표를 생성했기 때문에 플레이어의 누적 항해 횟수를 기록하는 기존 순위표는 필요가 없습니다
아카이브 기능을 사용하여 순위표를 ‘The Coast’에서 안 보이게 숨길 수 있습니다 목표 달성, 순위표, 순위표 세트를 아카이브할 수 있습니다
App Store Connect API로 순위표를 업데이트할 PATCH 요청을 제출합니다
요청의 archived 속성을 true로 설정하면 요청이 완료되었을 때 순위표가 게임에서 더 이상 표시되지 않습니다
그룹으로 ‘The Coast’와 스핀오프인 ‘The Coast - Blood Moon’에서 순위표를 공유하는 방법을 요약하겠습니다 Game Center 그룹을 생성하고 두 앱을 그룹에 연결합니다 그리고 현지화 및 이미지가 순위표를 그룹에 생성합니다 목표 달성과 마찬가지로, 릴리즈를 생성하기 전에 TestFlight에서 순위표를 테스트해 봅니다 이전 순위표는 더 이상 필요하지 않으므로 게임에 표시되지 않도록 아카이브합니다
다음으로 ‘The Coast’에서 멀티플레이어 호환성을 활성화하여 경주 기능을 제공하는 방법을 안내하겠습니다
멀티플레이어 호환성으로 매칭과 게임 세션을 제공할 수 있습니다 ‘The Coast’에서 플레이어를 친구들과 연결해 주면 신규 플레이어 유입에 도움이 될 것입니다
이 기능을 활성화하려면 서로 호환되는 Game Center 앱 버전을 지정하면 됩니다 본 예제에서는 Game Center 앱 버전 2.0을 기준으로 멀티플레이어 호환성 관계를 생성하여 버전 1.0을 제외한 1.1과 1.2에서만 매칭을 지원합니다
Game Center 앱 버전의 호환성 버전 관계에 POST 요청을 생성했습니다 요청에는 호환되는 버전들이 포함되었습니다 이제 버전 2.0의 플레이어는 버전 1.1 및 1.2의 플레이어와 멀티플레이어 세션에 참여할 수 있습니다 App Store Connect API의 새로운 Game Center 리소스는 App Store 게임 구성을 설정, 관리하는 좋은 도구입니다
즉 App Store Connect API의 Game Center 리소스는 개발자가 App Store Connect의 웹 애플리케이션 외부에서 Game Center 구성을 자동화할 수 있게 도와 줍니다 이러한 구성은 한 번 작성하면 여러 플랫폼에서 동기화됩니다 목표 달성과 순위표는 플레이어 참여를 유도하는 Game Center의 핵심 구성 요소로서 Game Center 그룹을 활용하여 여러 앱에서 공유할 수 있습니다 미사용 구성 요소는 아카이브하여 숨길 수 있습니다 그리고 멀티플레이어 호환성을 구성하여 친구와의 게임 세션을 제공할 수 있습니다
Apple은 피드백 지원을 통해 보내 주시는 의견을 환영합니다 시청해 주셔서 감사합니다 App Store Connect API의 새로운 Game Center 리소스를 유용하게 사용하시기 바랍니다
-
-
찾고 계신 콘텐츠가 있나요? 위에 주제를 입력하고 원하는 내용을 바로 검색해 보세요.
쿼리를 제출하는 중에 오류가 발생했습니다. 인터넷 연결을 확인하고 다시 시도해 주세요.