0

我正在尝试让 IAP 与 Appcelerator Titanium 3.1 一起使用。我有所有的签名/证书/配置文件/合同工作。我得到了一个无效的产品 ID,并解决了这个问题。现在,调用 requestProducts() 时,产品数组只是简单地返回空。

当我请求Products('valid_product')

Response: {"type":"callback","products":[{}],"source":{},"success":true}

当我请求Products('invalid_product')

Response: {"products":[],"type":"callback","source":{},"invalid":["invalid_product"],"success":true}

请注意,当我请求有效产品时(在此应用程序的 IAP 下的 itunesconnect 中设置),我没有返回无效产品,我只是为产品数组获取了一个空字符串。

为什么会发生这种情况?我已经为处于“等待审核”状态以及“准备提交”状态的 IAP 产品进行了尝试。我还没有提交二进制文件供审查。

任何帮助将不胜感激。

问候,丹尼尔

编辑,下面发布的代码

function requestProduct(identifier, success) {
showLoading();
Storekit.requestProducts([identifier], function (evt) {
    hideLoading();
    Ti.API.info('ReqProduct:' + JSON.stringify(evt));
    if (!evt.success) {
        alert('ERROR: We failed to talk to Apple!');
    }
    else if (evt.invalid) {
        alert('ERROR: We requested an invalid product!');
    }
    else {
        alert('success. product: ' + JSON.stringify(evt.products[0]));
        success(evt.products[0]);
    }
});

}

调用上述函数如下:

var product;
requestProduct('22credits', function(data) {
Ti.API.info(JSON.stringify(data));
product = data;
});
4

0 回答 0