在使用IabHelper开发IAB系统期间,我遇到了一些奇怪的事情:
我目前正在尝试使用Google提供的静态响应创建代码来处理已取消的请求。我正在推出正确SKU的购买流程,如Logcat中所示:
Launching buy intent for android.test.canceled. Request code: 10001
根据Google文档,这应该返回响应代码1(BILLING_RESPONSE_RESULT_USER_CANCELED),但是,我在空响应中收到响应代码0(BILLING_RESPONSE_RESULT_OK)。其余的日志消息是:
Ending async operation: launchPurchaseFlow
Purchase data: null
Data signature: null
Extras: Bundle[{RESPONSE=0}]
Expected item type: inapp
In-app billing error: BUG: either purchaseData or dataSignature is null
Extras: Bundle[{RESPONSE_CODE=0}]
Purchase failed!
所以我的问题是:如果我使用的是android.test.canceled SKU,我如何才能收到成功的响应代码?
[编辑] 顺便说一句:如果我取消android.test.purchased的进程,它将给出正确的响应。我的猜测是Android改变了一些东西,但没有更新他们的文档。任何人都可以证实这一点吗?