iOS 的应用内购买 (Appcelerator)

In App purchase for iOS (Appcelerator)

我想为 iOS 添加应用内购买功能,但我无法使其正常工作。

我尝试使用 ti.storekit,但是当我初始化它时出现错误 addTransactionObserver 未定义,这是初始化的关键函数。

有没有人运气好?

我的代码:

var storekit = require('ti.storekit');
var transactionStateChanged = function(e) {
    alert(e)
}


function init() {
    storekit.receiptVerificationSandbox = Ti.App.deployType !== 'production';
    storekit.bundleVersion = '1.0.4';
    storekit.bundleIdentifier = 'pl.aplikacjanowa';
    storekit.addEventListener('transactionState', transactionStateChanged);
    storekit.addTransactionObserver();
}

init();

错误:

[INFO] :   [object TiStorekitModule] loaded
[ERROR] :  Script Error {
[ERROR] :      column = 37;
[ERROR] :      line = 598;
[ERROR] :      message = "undefined is not a function (evaluating 'storekit.addTransactionObserver()')";
[ERROR] :      sourceURL = "file:///xyz"; //instead of xyz is path to file in which that function invoked
[ERROR] :      stack = "init@file:///xyz"; //instead of xyz is path to file in which that function invoked
[ERROR] :  }

看来您最初使用的模块版本过时或编译不正确。

正如您在评论中提到的那样 确实 编译出错了我假设这就是问题所在。 Medium, and releases are available for download from the Appcelerator GitHub 上很好地描述了如何实现该模块。不要相信 Gitt.io 总是拥有最新的。