원격 카탈로그 생성
제품 카탈로그를 정의하고 Remote Catalog 서비스에 업로드합니다.
읽는 시간 2분최근 업데이트: 10일 전
제품 카탈로그를 구성하고 새 버전을 설치하지 않고도 사용자가 최신 제품에 액세스할 수 있도록 Remote Catalog 서비스에 업로드할 수 있습니다. 제품 카탈로그를 원격 카탈로그에 업로드하면 Unity IAP SDK가
RemoteCatalogProvider- 사용자가 애플리케이션을 업데이트할 필요 없이 제품과 가격을 실시간으로 배포할 수 있습니다.
- 여러 결제 제공업체에서 제품 정보를 구성할 필요는 없습니다.
제품 및 카탈로그 목록
Unity IAP는 두 가지 관련 개념으로 카탈로그를 나타냅니다.- 제품은 사용자에게 부여하는 것입니다. 각 제품에는 라고도 하는 SKU가 있습니다.
productId - 카탈로그 목록은 제품의 구매 가능한 버전으로, 에 의해 식별됩니다. 제품에는 여러 개의 카탈로그 리스트가 있을 수 있으므로 동일한 제품을 두 가지 방법 이상으로 판매할 수 있습니다.
catalogListingId
productIdcatalogListingIdcatalogListingId제품 카탈로그 정의
다음 메서드를 사용하여 원격 제품 카탈로그에서 제품에 대한 정보를 정의할 수 있습니다. Unity Cloud 대시보드의 인앱 구매 > 카탈로그에서 카탈로그를 직접 작성할 수도 있습니다. Unity 에디터 사용하여 제품을 추가하는 경우 Unity IAP(인앱 구매)는 구매 이행 프로세스에 필요한 일부 백엔드 로직을 자동으로 처리합니다. 특히 백엔드 API를 통해 구매를 수행하려는 경우에 유용합니다.Unity 에디터 제품 카탈로그 생성
Unity 에디터에서 제품을 정의하는 경우 에디터는 제품 설정을 파일에 저장하므로, 컨피그인 코드 워크플로를 사용하여 관리할 수 있습니다. Unity 에디터 제품을 생성하려면 다음 단계를 따르십시오.- 카탈로그 항목을 만들려면 디렉토리를 마우스 오른쪽 버튼으로 클릭하고 Create > Services > IAP Catalog item을 선택합니다.
- 카탈로그 항목 이름을 지정합니다. 그러면 카탈로그 아이템 에셋이 생성되고 인스펙터 창 에셋이 열립니다.
- 카탈로그 항목의 세부 정보를 입력합니다. 자세한 내용은 카탈로그 항목 자산 인스펙터 레퍼런스를 참조하십시오.
- Apply를 선택합니다.

카탈로그 아이템 에셋 인스펙터 레퍼런스
다음 프로퍼티를 참고하여 IAP 카탈로그 항목을 정의합니다.프로퍼티 | 설명 |
|---|---|
| --script | 기본적으로 채워짐 |
| 카탈로그 리스팅 ID | 기본값으로 채워짐(파일 경로 사용) 구매를 시작할 때 이 리스트를 타게팅하는 데 사용하는 ID입니다. |
| SKU | 기본값으로 채워짐(파일 이름 사용) |
| 제품 유형 | IAP 상품의 유형을 선택합니다. |
| 제품 상세 정보 | 다음을 포함하여 제품에 대한 정보를 입력합니다.
|
| 가격 세부 정보 | 다음을 포함하여 제품 가격 정보를 입력합니다.
|
| 이미지 URL | 이미지 URL을 입력하여 제품에 표시할 이미지를 지정합니다. |
| 스토어 ID 오버라이드 | 선택 사항입니다. 서로 다른 명명 요구 사항이 있는 앱 스토어 Google Play에 리스트를 매핑합니다. SKU가 스토어의 요구 사항을 충족하지 않는 경우에만 다음 필드를 사용하십시오.
|
기존 카탈로그 임포트
이미 앱 스토어 또는 Google Play에서 카탈로그를 설정한 경우 제품을 다시 생성하지 않고 Unity 에디터 임포트할 수 있습니다.- Unity 에디터에서 서비스 > 인앱 구매 > 카탈로그 임포트를 선택합니다.
- 가져올 스토어의 앱 스토어 또는 Google Play 스토어 탭을 선택합니다.
- 단계 1: 카탈로그 데이터 가져오기, 스토어 자격 증명을 입력한 다음 카탈로그 가져오기를 선택합니다.
- 비밀 키
- 비밀 범위
- 2단계에서: Import 또는 Export를 선택하고, 생성된 카탈로그 항목의 Import New 대상 경로를 설정한 다음 Apply를 선택합니다.
카탈로그를 가져온 후 원격 카탈로그 서비스에 업로드합니다.
API 사용하여 제품 카탈로그 생성
Unity 에디터 UI를 사용하는 대신 에디터 스크립트를 통해 제품 카탈로그를 관리하려는 경우 이 방법을 사용합니다. 먼저 필요한 모든 종속성을 포함하는.asmdef.asmdef그런 다음{ "name": "MyIAPProject.Authoring", "rootNamespace": "MyIAPProject.Authoring", "references": [ Unity.Services.Core "Unity.Services.Core.Editor", "Unity.Services.Core.Internal", "Unity.Services.DeploymentApi", "Unity.Services.Core.Environments.Editor", "UnityEditor.Purchasing.Authoring", "UnityEditor.Purchasing.Editor.Authoring.Core", "Unity.Purchasing.Editor.Shared", "Unity.Purchasing" ], "includePlatforms": [ "Editor" ]}
ILiveContentConfigClient- 를 통해 관련 서비스를 얻으십시오.
PurchasingAuthoringServiceProviderILiveContentConfigClientIEnvironmentsApiPurchasingAuthoringServiceProvider.GetService<ILiveContentConfigClient>()
- 필요한 정보로 인터페이스를 초기화합니다.
ILiveContentConfigClient - 카탈로그를 읽거나 업데이트하기 위한 호출을 생성합니다. 호출은 현재 로그인된 사용자 권한으로 이루어집니다.
다음 코드 샘플을 참고하십시오.
[MenuItem("IAP/배포/카탈로그 가져오기 및 출력")]public static async void Select(){ var lcc = PurchasingAuthoringServiceProvider.GetService<ILiveContentConfigClient>(); var env = PurchasingAuthoringServiceProvider.GetService<IEnvironmentsApi>(); await lcc.Initialize( env.ActiveEnvironmentId.ToString(), CloudProjectSettings.projectId, CancellationToken.None); var items = await lcc.List(CancellationToken.None); Debug.Log(string.Join("\n", items.Select(i => $"{i.uSku} - {i.ProductDetails[0].Description}")));}
맞춤형 Deployment 창 통합을 사용하여 제품 카탈로그를 생성합니다.
Deployment 창을 사용하여 커스텀 통합을 호스팅할 수 있습니다. 따라서 CSV와 같은 간단한 커스텀 배포를 만들거나 원격 카탈로그로 직접 익스클럽할 수 있습니다. 간단한 Deployment 창을 만드는 방법에 대한 자세한 내용은 Deployment 패키지 기술 자료를 참조하십시오.제품 카탈로그를 Remote Catalog 서비스에 업로드합니다.
Deployment 창을 사용하여 제품을 Remote Catalog에 업로드합니다.- Unity 에디터에서 서비스 > 배포를 선택하여 배포 창을 엽니다.
- 원격 카탈로그에 추가할 제품을 선택하고 선택 배포를 선택합니다.

원격 카탈로그에서 상품 삭제
Unity 에디터 원격 카탈로그에서 항목을 삭제하는 방법에는 여러 가지가 있습니다.- 인스펙터 창에서 카탈로그 항목을 열고 Remote Delete를 선택합니다.
- Deployment 창을 열고 카탈로그 항목을 마우스 오른쪽 버튼으로 클릭하고 Delete Remote를 선택합니다.