使用新的InAppBilling V3
购买subsciption项目时遇到问题这是我的IABHelper的handleActivityResult方法:
public boolean handleActivityResult(int requestCode, int resultCode, Intent data) {
IabResult result;
if (requestCode != mRequestCode)
return false;
checkSetupDone("handleActivityResult");
// end of async purchase operation
flagEndAsync();
if (data == null) {
Log.e(TAG + "Null data in IAB activity result.");
result = new IabResult(IABHELPER_BAD_RESPONSE, "Null data in IAB result");
if (mPurchaseListener != null)
mPurchaseListener.onIabPurchaseFinished(result, null);
return true;
}
int responseCode = getResponseCodeFromIntent(data);
String purchaseData = data.getStringExtra(RESPONSE_INAPP_PURCHASE_DATA);
String dataSignature = data.getStringExtra(RESPONSE_INAPP_SIGNATURE);\
...
在该代码之后,purchaseData和dataSignature为空,因此无法完成购买流程。
当我尝试购买应用内商品时,一切正常。 purchaseData和dataSignature不为空。
这家伙似乎有同样的问题:
Google Play In-App Purchase returns error code -1008: null puchaseData or dataSignature
但它对我不起作用,我仍然为这两个字段都为空。
我做错了什么?提前谢谢!
答案 0 :(得分:1)
我只解决了这个问题,在REAL情况下测试。我发布了应用程序并使用一个测试帐户进行签名,并获得有效的回复。