[Unity 플러그인] 원스토어 인앱결제 업그레이드 하기
Import Unity Package 비교
SDK V17
SDK V19
PURCHASE
Onestore_IapCallbackManager.cs
GaaCallbackManager.cs
Onestore_IapCallManager.cs
GaaCallManager.cs
Onestore_IapResultListener.cs
GaaIapResultListener.cs
Onestore_PurchaseResponse.cs
GaaPurchaseResponse.cs
UTIL
AndroidNative.cs
AndroidNative.cs
UI
Onestore_IapUi.cs
MainUIScript.cs
LogScript.cs
LoadingScript.cs
JSON
global-appstores.json
IapCallManager API 비교
v17 Onestore_IapCallManager.cs
v19 GaaIapCallManager.cs
결제모듈과의 연결
connect
StartConnection
결제모듈과의 연결해제
terminate
EndConnection
지원여부 확인
isBillingSupported
x
인앱 상품 구매
launchPurchaseFlowAsync
LaunchPurchaseFlow
인앱 상품 소비
consume
Consume
인앱 상품 확인
x
Acknowledge
소비되지 않은 상품의 구매내역 (월 자동결제 포함)
getPurchases
QueryPurchases
인앱 상품 상세정보
getProductDetails
QueryProductDetails
월 자동결제 상태 변경
manageRecurringAuto
ManageRecurringProduct
결제 모듈 업데이트 또는 설치
x
LaunchUpdateOrInstallFlow
원스토어 로그인 호출
login
LaunchLoginFlow
마켓 구분 코드 확인
x
GetStoreInfo
인앱결제 초기화 및 연결
v19 SDK 부터는 IapResult.code 의 값으로 성공, 실패 여부를 판단할 수 있습니다.
결제 모듈과 연결하는 방식은 똑같습니다.
Before
After
연결 성공, 실패에 대한 응답은 많이 달라졌습니다.
SDK V17에서는 연결 성공 이후에 isBillingSupported()를 통해 지원 가능여부를 확인해야 했습니다.
하지만, SDK V19부터는 더 이상 지원 가능여부 체크를 하지 않아도 됩니다. SDK 내부에서 자동으로 지원 가능여부를 체크합니다.
IapResult.code 의 값을 확인하려면 PurchaseResponse.ResponseCode 를 참조하세요.
Before
After
상품정보 조회하기
Before
인앱상품 아이디(productId) 배열값과 그에 해당하는 상품타입을 지정합니다. 인앱상품 유형으로는 관리형 상품(ProductType.INAPP), 월정액 상품(ProductType,AUTO)가 있으며, 두 유형을 모두 조회하려면 ProductType.ALL을 입력하면 됩니다.
After
상품정보 조회의 응답 결과값은 GaaIapResultListener의 ProductDetailsSuccessEvent(), ProductDetailsErrorEvent()를 통해 전달 받을 수 있습니다.
Andorid와 Unity와의 통신은 문자열 통신이고 한번에 전달할 수 있는 문자열의 길이가 제한되어 한 번에 한 상품씩 전달됩니다.
그래서, ProductDetailsSuccessEvent(..., ..., int count, int totalCount) 값이 중요합니다.
ex) 상품이 1개인 경우: count = 1, totalCount = 1 상품이 10개인 경우: count = 1, totalCount = 10 ... count = 10, totalCount = 10
Beforede
After
구매 요청하기
인앱 상품 구매를 위해 QueryProductDetails로 얻어온 productId, productType 등을 PurchaseFlowParams 객체에 담아 전달 하도록 변경 되었습니다.
Before
After
LaunchPurchaseFlow() 메서드를 호출하면 원스토어 결제화면이 나타납니다.

그림1. 원스토어 상품 결제 화면
결제에 대한 응답 결과를 받는 부분에 '상품정보 조회하기'와 같은 이유로 count, totalCount가 존재 합니다.
Before
After
구매 확인하기
원스토어 인앱결제 라이브러리 V6(SDK V19)에 새롭게 추가된 API 입니다.
자세한 내용은 'Unity에서 원스토어 인앱결제 사용하기'에서 확인 할 수 있습니다.
관리형 상품 소비하기
Before
After
구매내역 조회하기
구매내역 조회하기의 요청은 큰 변동 사항이 없습니다.
Before
After
다음은 응답 부분이며, '구매 요청하기' 응답과 동일하게 전달 됩니다.
Before
After
월정액 상품 상태 변경하기
SDK V17에서는 개발사에서 직접 recurringState를 판단하여 command 값을 전달 해야 했지만, SDK V19에서는 PurchaseData를 넣으면 SDK에서 판단하여 command 값을 전달 합니다.
Before
Aftere
원스토어 로그인 요청하기
Before
After
원스토어 서비스 설치하기
원스토어 인앱결제 라이브러리 V6(SDK V19)에 새롭게 추가된 API 입니다.
자세한 내용은 'Unity에서 원스토어 인앱결제 사용하기'에서 확인 할 수 있습니다.
스토어 구분 코드 얻기
원스토어 인앱결제 라이브러리 V6(SDK V19)에 새롭게 추가된 API 입니다.
자세한 내용은 'Unity에서 원스토어 인앱결제 사용하기'에서 확인 할 수 있습니다.
Last updated

