한국어
Search
K

[C]PurchaseClient

public abstract class BillingClient extends Object
java.lang.Object
    ↳ com.gaa.sdk.iap.PurchaseClient
라이브러리와 사용자 어플리케이션 코드 간의 통신을 위한 기본 인터페이스 입니다.
모든 메서드는 비동기로 처리되며 UI thread에서 호출되어야 하며 모든 콜백은 UI thread로 반환됩니다.
이 클래스를 인스턴스화한 후 연결 설정을 하려면 startConnection([I]PurchaseClientStateListener) 메서드를 호출하고 설정이 완료되면 리스너를 통해 알림을 받을 수 있습니다.
class YourPurchaseManager implements PurchaseClientStateListener { private PurchaseClient mPurchaseClient; public YourPurchaseManager() { mPurchaseClient = PurchaseClient.newBuilder(activity) .setBase64PublicKey(/* your public key */) .setListener(this) .build(); } ... }
일반적으로 설정이 완료되면 구매내역 조회와 인앱 상품의 상세정보를 호출합니다. queryPurchasesAsync(String, [I]QueryPurchasesListener)queryProductDetailsAsync([C]ProductDetailsParams, [I]ProductDetailsListener) 참조하세요.
이 객체로 모든 작업을 마치고 어플리케이션을 종료할 때는 endConnection()의 호출을 잊지마십시오. 결제 모듈과의 연결해제 및 자원을 해제해야 합니다. 권장 위치는 Activity.onDestroy() 입니다.
라이브러리의 자세한 로그를 확인하려면 Logger.setLogLevel(int) android.util.Log.VERBOSE 입력하여 호출하면 됩니다. 주의!!! 어플리케이션의 릴리즈 버전을 출시 전에 꼭! Logger.setLogLevel(int)를 제거 하십시오.

Summary


Nested classes
Text
@interface
@interface
@interface
@interface
@interface
class
PurchaseClient 인스턴스를 쉽게 만들기 위한 빌더입니다.

Public methods


newBuilder

@AnyThread
public static newBuilder(Context context)
PurchaseClient의 인스턴스를 만들기 위한 빌더를 생성합니다.
Parameters:
context
applicationContext를 사용하여 결제모듈과 연결을 위해 사용됩니다.
Returns:

isReady

@AnyThread
public abstract boolean isReady()
클라이언트가 현재 서비스에 연결되어 있는지 확인하여 다른 함수에 대한 요청이 성공하는지 확인합니다.
Returns:
boolean

getConnectionState

@AnyThread
public abstract int getConnectionState()
현재 PurchaseClient 의 연결상태를 반환합니다.
Returns:
Text
int
[A]PurchaseClient.ConnectionState 에 해당하는 상태 값.

isFeatureSupported

@UiThread
public abstract [C]IapResult isFeatureSupported(String feature)
지정한 기능이 서비스에서 지원 되는지 확인합니다.
Parameters:
String
[A]PurchaseClient.FeatureType 상수 중 하나 입니다.
Returns:
IapResult
기능이 지원되는 경우 PurchaseClient.ResponseCode.RESULT_OK 그렇지 않을 경우 PurchaseClient.ResponseCode.ERROR_FEATURE_NOT_SUPPORTED

startConnection

@AnyThread
public abstract void startConnection([I]PurchaseClientStateListener listener)
PurchaseClient 설정 프로세스를 비동기적으로 시작합니다. 완료되면 [I]PurchaseClientStateListener를 통해 응답 받습니다.
Parameters:
listener
PurchaseClient 설정과 결제모듈 연결이 완료 되었을 때 응답을 받습니다.

endConnection

@AnyThread
public abstract void endConnection()
결제 모듈과의 연결을 끊고 PurchaseClient의 보유 자원을 해제 합니다.

launchUpdateOrInstallFlow

@UiThread
public abstract void launchUpdateOrInstallFlow(Activity activity, [I]IapResultListener listener)
IapResult.getResponseCode()의 값이 PurchaseClient.ResponseCode.RESULT_NEED_UPDATE가 발생했을 때 결제 모듈의 업데이트 또는 설치를 위해 호출해야 합니다.
Parameters:
activity
Activity: 결제 모듈의 업데이트 또는 설치의 흐름 알기위해 activity를 참조합니다.
listener

launchPurchaseFlow

@UiThread
public abstract [C]IapResult launchPurchaseFlow(Activity activity, [C]PurchaseFlowParams params)
인앱 상품 구매를 시작합니다. 구매화면이 표시되고 결과를 PurchaseClient 를 초기화할 때 지정했던 [I]PurchasesUpdatedListener를 통해 응답 받습니다.
Parameters:
activity
Activity: 구매화면을 띄우기 위해 activity를 참조합니다.
params
[C]PurchaseFlowParams 구매화면을 띄우기 위한 매개변수입니다.
Returns:
IapResult

consumeAsync

@AnyThread
public abstract void consumeAsync(params, listener)
구매한 상품을 소비 합니다. 소유된 상품만 수행할 수 있으며, 소비를 진행했던 상품의 경우 다시 구매를 진행해야 합니다. 경고! API v6 부터는 구매 후 3일 이내에 소비(consume) 또는 확인(acknowledge)을 하지 않으면 환불됩니다.
Parameters:
params
[C]ConsumeParams 소비를 위한 매개변수입니다.
listener
[I]ConsumeListener 소비 작업의 결과를 전달 받습니다.

acknowledgeAsync

@AnyThread
public abstract void acknowledgeAsync(acknowledgeParams, listener)
구매한 상품을 확인 합니다. 소유된 상품만 수행할 수 있으며, 확인을 했던 상품은 소비를 하지 않으면 재구매를 할 수 없습니다. 관리형 상품 또는 월정액 상품에 모두 적용가능 합니다. 특히 관리형 상품의 경우 확인(acknowledge)를 하고 일정 기간후에 소비(consume)을 진행하는 기간제 상품으로 활용할 수 있습니다. 경고! API v6 부터는 구매 후 3일 이내에 소비(consume) 또는 확인(acknowledge)을 하지 않으면 환불됩니다.
Parameters:
acknowledgeParams
[C]AcknowledgeParams 구매 확인을 위한 매개변수입니다.
listener
[I]AcknowledgeListener 구매 확인 작업의 결과를 전달 받습니다.

queryPurchasesAsync

@AnyThread
public abstract void queryPurchasesAsync(String productType,  listener)
앱에서 구매한 모든 상품에 대한 구매정보를 가져옵니다.
Parameters:
productType
[A]PurchaseClient.ProductType 상품의 타입을 지정합니다.
listener
[I]QueryPurchasesListener 구매내역에 대한 결과를 전달 받습니다.

queryProductDetailsAsync

@AnyThread
public abstract void queryProductDetailsAsync(params, listener)
개발자 센터에 등록한 인앱상품의 상세정보를 가져옵니다.
Parameters:
params
[C]ProductDetailsParams 상품 상세정보를 가져오기 위한 매개변수입니다.
listener
[I]ProductDetailsListener 상품 상세정보에 대한 결과를 전달 받습니다.

manageRecurringProductAsync

@AnyThread
public abstract void manageRecurringProductAsync(recurringProductParams, listener)
월정액 상품의 상태를 변경 합니다. 매월 자동결제를 취소 하거나 취소한 자동결제를 다시 재개하는 동작을 진행합니다.
Parameters:
recurringProductParams
[C]RecurringProductParams 월정액 상품 상태 변경을 위한 매개변수입니다.
listener
[I]RecurringProductListener 월정액 상품 상태 변경에 대한 결과를 전달 받습니다.

launchLoginFlowAsync

@UiThread
public abstract void launchLoginFlowAsync(Activity activity, [I]IapResultListener listener)
IapResult.getResponseCode()의 값이 PurchaseClient.ResponseCode.RESULT_NEED_LOGIN가 발생했을 때 스토어 로그인을 진행합니다.
Parameters:
activity
Activity: 스토어 로그인의 흐름 알기위해 activity를 참조합니다.
listener
[I]IapResultListener 로그인 성공, 실패에 대한 결과를 전달 받습니다.

launchManageSubscription

@UiThread
public abstract void launchManageSubscription(Activity activity, [C]SubscriptionParams subscriptionParams)
구독 상품 관리 메뉴로 이동합니다.
Parameters:
activity
Activity: 구독 상풍 관리 메뉴로 이동하기 위해 activity를 참조합니다.
subscriptionParams
[C]SubscriptionParams null 일 경우 관리 메뉴 화면으로 PurchaseData 가 있을 경우 상세 화면으로 이동합니다.

getStoreInfoAsync

@AnyThread
public abstract void getStoreInfoAsync([I]StoreInfoListener listener)
마켓 구분코드를 가져옵니다. 이 값은 server to server API를 사용할 때 필요한 값 입니다.
Parameters:
listener
[I]StoreInfoListener 마켓 구분코드를 전달 받습니다.
Last modified 10mo ago