PurchaseClient
라이브러리와 사용자 어플리케이션 코드 간의 통신을 위한 기본 인터페이스 입니다.
모든 메서드는 비동기로 처리되며 UI thread에서 호출되어야 하며 모든 콜백은 UI thread로 반환됩니다.
이 클래스를 인스턴스화한 후 연결 설정을 하려면 startConnection(
PurchaseClientStateListener
)
메서드를 호출하고 설정이 완료되면 리스너를 통해 알림을 받을 수 있습니다.
class
YourPurchaseManager implements
PurchaseClientStateListener { private
PurchaseClient mPurchaseClient;
public
YourPurchaseManager() { mPurchaseClient = PurchaseClient.newBuilder(activity) .setBase64PublicKey(/* your public key */) .setListener(this) .build(); } ... }
일반적으로 설정이 완료되면 구매내역 조회와 인앱 상품의 상세정보를 호출합니다. queryPurchasesAsync(String,
PurchasesListener
)
및 queryProductDetailsAsync(
ProductDetailsParams
,
ProductDetailsListener
)
참조하세요.
이 객체로 모든 작업을 마치고 어플리케이션을 종료할 때는 endConnection()
의 호출을 잊지마십시오. 결제 모듈과의 연결해제 및 자원을 해제해야 합니다. 권장 위치는 Activity.onDestroy()
입니다.
라이브러리의 자세한 로그를 확인하려면 Logger.setLogLevel(int)
에 android.util.Log.VERBOSE
입력하여 호출하면 됩니다.
주의!!! 어플리케이션의 릴리즈 버전을 출시 전에 꼭! Logger.setLogLevel(int)
를 제거 하십시오.
Summary
@interface
@interface
@interface
class
PurchaseClient 인스턴스를 쉽게 만들기 위한 빌더입니다.
Public methods
newBuilder
PurchaseClient의 인스턴스를 만들기 위한 빌더를 생성합니다.
Parameters:
context
applicationContext를 사용하여 결제모듈과 연결을 위해 사용됩니다.
Returns:
startConnection
PurchaseClient 설정 프로세스를 비동기적으로 시작합니다. 완료되면 PurchaseClientStateListener를 통해 응답 받습니다.
Parameters:
listener
PurchaseClient 설정과 결제모듈 연결이 완료 되었을 때 응답을 받습니다.
endConnection
결제 모듈과의 연결을 끊고 PurchaseClient의 보유 자원을 해제 합니다.
launchUpdateOrInstallFlow
IapResult.getResponseCode()의 값이 PurchaseClient.ResponseCode.RESULT_NEED_UPDATE가 발생했을 때 결제 모듈의 업데이트 또는 설치를 위해 호출해야 합니다.
Parameters:
activity
Activity: 결제 모듈의 업데이트 또는 설치의 흐름 알기위해 activity를 참조합니다.
listener
launchPurchaseFlow
인앱 상품 구매를 시작합니다. 구매화면이 표시되고 결과를 PurchaseClient 를 초기화할 때 지정했던 PurchasesUpdatedListener를 통해 응답 받습니다.
Parameters:
activity
Activity: 결제 흐름을 알기위해 activity를 참조합니다.
params
Returns:
IapResult
consumeAsync
구매한 상품을 소비 합니다. 소유된 상품만 수행할 수 있으며, 소비를 진행했던 상품의 경우 다시 구매를 진행해야 합니다. 경고! API v6 부터는 구매 후 3일 이내에 소비(consume) 또는 확인(acknowledge)을 하지 않으면 환불됩니다.
Parameters:
params
listener
acknowledgeAsync
구매한 상품을 확인 합니다. 소유된 상품만 수행할 수 있으며, 확인을 했던 상품은 소비를 하지 않으면 재구매를 할 수 없습니다. 관리형 상품 또는 월정액 상품에 모두 적용가능 합니다. 특히 관리형 상품의 경우 확인(acknowledge)를 하고 일정 기간후에 소비(consume)을 진행하는 기간제 상품으로 활용할 수 있습니다. 경고! API v6 부터는 구매 후 3일 이내에 소비(consume) 또는 확인(acknowledge)을 하지 않으면 환불됩니다.
Parameters:
acknowledgeParams
listener
queryPurchasesAsync
앱에서 구매한 모든 상품에 대한 구매정보를 가져옵니다.
Parameters:
productType
listener
queryProductDetailsAsync
개발자 센터에 등록한 인앱상품의 상세정보를 가져옵니다.
Parameters:
params
listener
manageRecurringProductAsync
월정액 상품의 상태를 변경 합니다. 매월 자동결제를 취소 하거나 취소한 자동결제를 다시 재개하는 동작을 진행합니다.
Parameters:
recurringProductParams
listener
launchLoginFlowAsync
IapResult.getResponseCode()의 값이 PurchaseClient.ResponseCode.RESULT_NEED_LOGIN가 발생했을 때 스토어 로그인을 진행합니다.
Parameters:
activity
Activity: 스토어 로그인의 흐름 알기위해 activity를 참조합니다.
listener
getStoreInfoAsync
마켓 구분코드를 가져옵니다. 이 값은 server to server API를 사용할 때 필요한 값 입니다.
Parameters:
listener
Last updated