소비형 아이템의 경우 구매를 할시 오류가 나면 이미 구매한 상품이라는 오류가 뜨면서 재구매가 안되는 현상이 있습니다.
oncreate() 에서 queryInventoryAsync를 실행시킨후
getPurchase 를 호출 하고 consumeAsync를 호출하면 소비형아이템이 정상적으로 구매가 됩니다.
oncreate()
mHelper.startSetup(new IabHelper.OnIabSetupFinishedListener() {
public void onIabSetupFinished(IabResult result) {
if (!result.isSuccess()) {
// Oh noes, there was a problem.
Log.d(TAG, "Problem setting up In-app Billing: " + result);
}
// Hooray, IAB is fully set up!
mHelper.queryInventoryAsync(mGotInventoryListener);
}
});
// Listener that's called when we finish querying the items and subscriptions we own
IabHelper.QueryInventoryFinishedListener mGotInventoryListener = new IabHelper.QueryInventoryFinishedListener() {
public void onQueryInventoryFinished(IabResult result, Inventory inventory) {
Log.d(TAG, "Query inventory finished.");
if (result.isFailure()) {
// complain("Failed to query inventory: " + result);
return;
}
// Check for gas delivery -- if we own gas, we should fill up the tank immediately
Purchase gasPurchase = inventory.getPurchase(SKU_GAS);
if (gasPurchase != null && verifyDeveloperPayload(gasPurchase)) {
Log.d(TAG, "We have gas. Consuming it.");
mHelper.consumeAsync(inventory.getPurchase(SKU_GAS), mConsumeFinishedListener);
return;
}
}
};
'잡다한것들전부 > 안드로이드' 카테고리의 다른 글
| 안드로이드 유효성 검사하기 AsyncTask.. (0) | 2014.08.05 |
|---|---|
| 애플리케이션 오류 (0) | 2014.01.13 |
| 구글 인앱 빌링 ver 3 item already owned 오류시 해결방법 (0) | 2014.01.13 |
| 구글 안드로이드 인앱결제 관련 인앱빌링 ver3 적용 (0) | 2014.01.13 |
| adb 패스 설정 (0) | 2014.01.07 |
| 안드로이드 동적 생성 view button progressbar 등 (0) | 2014.01.06 |
Trackback 0 And
Comment 0


