Google Play应用内购买返回错误代码-1008:null puchaseData或dataSignature

我在v2中成功实施后,尝试实施Google Play应用内购买v3 。 但是,每次尝试购买我真正的应用内商品时,都会收到以下后续错误:

IAB返回null purchaseData或dataSignature(响应-1008:未知错误)

这来自IabHelper.java类,第452行 :

if (purchaseData == null || dataSignature == null) { logError("BUG: either purchaseData or dataSignature is null."); logDebug("Extras: " + data.getExtras().toString()); result = new IabResult(IABHELPER_UNKNOWN_ERROR, "IAB returned null purchaseData or dataSignature"); if (mPurchaseListener != null) mPurchaseListener.onIabPurchaseFinished(result, null); return true; } 

我已经确认a)我的应用已签名,b)我的应用版本与Google Play商店中的草稿版本#匹配,以及c)尝试购买的用户已添加为测试用户。 我已尝试过3个测试帐户和4个应用内购买订阅types。

  • 我应该关注这个错误代码吗?
  • 这是一个仅限于非生产版本的问题吗?
  • 如果/当我发布此版本时,这是否会影响我的客户?
  • 一旦您实际使用IAB版本3进行实际发布,您真的只能测试端到端的应用内购买吗? 我意识到我可以使用android.test.purchased项types,我有(它的工作原理),但我不认为这是一个有效的端到端测试。

Solutions Collecting From Web of "Google Play应用内购买返回错误代码-1008:null puchaseData或dataSignature"

我自己有这个问题。 过了一会儿,我发现了我做错了什么。 我在IABHelper上调用了错误的方法。

如果您使用在Google Developer Console上注册为订阅的SKU调用mHelper.launchPurchaseFlow(...) ,则会导致错误:IAB返回null purchaseData或dataSignature(响应-1008:未知错误)。

如果您有一个注册为订阅的SKU,则必须使用以下方法: mHelper.launchSubscriptionPurchaseFlow(...)

希望这可以帮助。

错误购买:iabResult:IAB返回null购买数据或数据签名(响应:-1008未知错误)

如果在使用launchPurchaseFlow()方法时遇到上述错误并获得此错误,请检查您的产品types。 我是创建订阅但我需要托管产品,例如非消费品types。 我的意思是要小心购买或订阅