BreezeIAP
Unity IAP를 Wrapping하여 사용자가 보다 편리하게 접근할 수 있도록 인터페이스를 제공합니다.
아래 두 가지 방법 중 하나를 선택합니다.
github URL의 # 뒷버전은 Changelog의 최신 사항을 참고해주세요.
UPM에서 사용하기
Section titled “UPM에서 사용하기”- UPM을 연 후 좌측 상단의 + 버튼을 누릅니다.
Install package from git URL...을 선택합니다.https://github.com/achieveonepark/BreezeIAP.git#1.0.0를 입력 후 Install합니다.
직접 추가하기
Section titled “직접 추가하기”Unity Project/Packages/manifest.json파일을 실행합니다.Dependencies에"com.achieve.iap": "https://github.com/achieveonepark/BreezeIAP.git#1.0.0"내용을 추가합니다.
이 패키지는 아래의 기능을 제공합니다.
BreezeIAP.Initialize | Unity IAP InitializeBreezeIAP.Purchase | 결제 시도BreezeIAP.Confirm | 결제 성공 후 완료 처리BreezeIAP.GetPendingList | 결제 완료 처리가 되지 않은 상품 리스트 획득BreezeIAP.GetRestoreList | Android, iOS 별 구매 복원 할 상품 리스트 획득Initialize
Section titled “Initialize”Unity IAP의 초기화 과정을 비동기 방식으로 처리하여 완료 시점을 알 수 있도록 구현하였습니다.
초기화 이전에 스토어에 등록된 ProductId를 런타임에서 획득할 수 있는지 확인 부탁드립니다.
using Achieve.IAP;
private async void Start(){ // Array, List 모두 가능 List<InitializeDto> dtoList = new List<InitializeDto>();
// 스토어에 등록 된 Product의 Id와 상품 타입을 Dto에 등록하여 List에 추가합니다. dtoList.Add(new InitializeDto { ProductId = "Consumable", ProductType = ProductType.Consumable });
await BreezeIAP.InitializeAsync(dtoList);}Purchase, Confirm
Section titled “Purchase, Confirm”결제 시도부터 성공 및 실패 시점까지 사용자가 명확하게 판단할 수 있도록 인터페이스와 에러 메시지를 제공합니다.
public async void PurchaseAsync(string productId){ PurchaseResult result = await BreezeIAP.PurchaseAsync(productId);
// 성공 시 if(result.IsSuccess) { // 서버를 통한 영수증 검증을 진행하신다면 이 시점에 추가해주세요.
// PurchaseResult, Product 모두 가능 BreezeIAP.Confirm(result);
// 아이템 지급
return; }
Debug.Log($"[{result.Product.definition.id}] 상품 구매에 실패했습니다. 이유 : {result.ErrorMessage}");}Dependencies
Section titled “Dependencies”In App Purchasing (4.12.0)