查询购买商品库存失败(错误-1003)-Appcelerator Titanium inAppBilling

Failed to query purchased items inventory (error -1003) - Appcelerator Titanium inAppBilling

我正在使用 Appcelerator Titanium 制作 Android 应用程序。我添加了 ti.inappbilling 模块 (v. 3.0.2) 并且一切正常(我可以进行购买,应用程序在 Google 播放中)直到我想查询库存(总是 returns一个错误)。

我想查询已购买的商品,我是这样操作的:

var runSetup = function() {
     myApp.inAppBilling.startSetup({
        publicKey: myApp.PUBLIC_KEY //this is defined in code
    });
}

var setupComplete = function(e) {
    if (e.success) {
        setTimeout(function() {
            //i did timeout to be sure sure delay is not an issue
            myApp.inAppBilling.queryInventory();
        }, 5000);
    } else {
        alert('Payment Setup FAILED.');
    }
};


myApp.inAppBilling = require('ti.inappbilling');

myApp.inAppBilling.addEventListener('queryinventorycomplete', function(e) {
    Ti.API.info(JSON.stringify(e));
});

myApp.inAppBilling.addEventListener('setupcomplete', setupComplete);

runSetup();

作为回应,我总是收到错误 -1003(IAB 结果验证失败)。

整个响应如下所示:

{
    "type": "queryinventorycomplete",
    "source": {
        "bubleParent": true,
        "invocationAPIs": [],
        "apiName": "Ti.Module",
        "__propertiesDefined__": true,
        "_events": {
            "purchasecomplete": {},
            "queryinventorycomplete": {},
            "setupcomplete": {},
        }
    },
    "responseCode": -1003,
    "success": false,
    "bubbles": false,
    "cancelBubble" :false
}

我遇到了同样的问题

检查 myApp.PUBLIC_KEY 是否包含正确的密钥

runSetup = function() {
    Ti.API.info('myApp.PUBLIC_KEY  ' + myApp.PUBLIC_KEY);
    myApp.inAppBilling.startSetup({
        publicKey : myApp.PUBLIC_KEY //this is defined in code
    });
};