Appcelerator Titanium 3.1 で IAP を動作させようとしています。すべての署名/証明書/プロビジョニング プロファイル/契約が機能しています。無効な製品 ID を取得していましたが、その問題を修正しました。現在、requestProducts() を呼び出すと、product 配列は単純に空で返されます。
私が要求したとき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;
});