1
인앱 결제를 구현하는 코드의 일부입니다. 나는 두 가지 의문을 품는다.인앱 결제 구현 : 확인 된 구매
@Override
public void onPurchaseStateChange(PurchaseState purchaseState, String itemId,
int quantity, long purchaseTime, String developerPayload) {
if (Consts.DEBUG) {
Log.i(TAG, "onPurchaseStateChange() itemId: " + itemId + " " + purchaseState);
}
if (developerPayload == null) {
logProductActivity(itemId, purchaseState.toString());
} else {
logProductActivity(itemId, purchaseState + "\n\t" + developerPayload);
}
if (purchaseState == PurchaseState.PURCHASED) {
mOwnedItems.add(itemId);
// At this point I have to put Premium changes
}
}
내 질문 : 당신 드릴 수 있습니다 응용 프로그램을 구입 한 것을 어떻게 "나는 프리미엄 변화를 넣어야 할이 시점에서"말하는 시점에서
?
일단 구매가 완료되면이 작업을 수행하는 데 몇 시간이 걸릴 수 있음을 이해했습니다. 내 애플리케이션에서 "현 시점에서 프리미엄 변경 사항을 입력해야합니다"라는 코드가 실행되도록하려면 어떻게해야합니까? 이 블록
if (purchaseState == PurchaseState.PURCHASED) { ... }
에 도달하면
NathanZ, 당신의 속도 응답에 대한 감사합니다! 나는 의심이 하나 더있다. 내 문제 : MyBuyActivity.java를 호출 할 때 관련된 청구 서비스를 시작하지만 사용자가 버튼을 클릭하지 않아도 청구 서비스가 시작되지 않습니다. 그런 다음, 그 가격을 환불하면 앱은 항상 프리미엄이됩니다. 내 주요 활동에서 청구 서비스를 호출하려면 어떻게해야합니까? 구매가 효과를 내기까지 몇 시간이 걸리는 경우도 마찬가지입니다 (드문 일이긴하지만). 내 하찮은 영어 실력에 죄송하다는 말씀을 드리고 싶습니다. – Pablo
환불에 대해이 게시물을 참조하십시오 : http://stackoverflow.com/questions/6817507/android-in-app-billing-cancel-payment – znat