6

我在使用新的 InAppBilling V3 购买订阅项目时遇到问题

这是我的 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

但这对我不起作用,我仍然在这两个领域都为空。

我究竟做错了什么?提前致谢!

4

1 回答 1

1

我只解决了这个问题,在真实情况下进行测试。我发布了该应用程序并使用一个测试帐户进行了签名,并获得了有效的响应。

于 2013-08-30T13:24:52.347 回答