InAppПокупки не работают в приложении PhoneGap - PullRequest
3 голосов
/ 13 декабря 2011

У меня проблемы с попыткой запустить приложение AppPurchases в приложении на базе iPhone phoneGap. Я получил inAppPurchase-плагин на gitHub https://github.com/phonegap/phonegap-plugins/tree/master/iPhone/InAppPurchaseManager

Затем я создал свою учетную запись разработчика, приобрел de u $ d 99 и сделал свой каталог InppPurchase Создал мою учетную запись iTunes Connect, чтобы получить для этого тестового пользователя.

Я разместил все файлы плагинов там, где он говорит ... И, если я пытаюсь запустить «alert (typeof window.plugins.inAppPurchaseManager)», он показывает «объект», поэтому плагины загружаются правильно!

Проблема появляется, когда я пытаюсь сделать покупку ..

Я выхожу из своей учетной записи itunes, запускаю свой бинарный файл на своем iphone, и когда я совершаю покупку, я должен увидеть приглашение, запрашивающее информацию о моей тестовой учетной записи, чтобы сделать символическую покупку! Но этого никогда не происходит!

Код JavaScript (очень простой), который я пытаюсь запустить, следующий:

document.addEventListener('deviceready', onDeviceReady, false);

function onDeviceReady(event) {
    window.plugins.inAppPurchaseManager.onPurchased = function(transactionIdentifier, productId, transactionReceipt) {
        alert("purchased");
    };

    window.plugins.inAppPurchaseManager.onRestored = function(originalTransactionIdentifier, productId, originalTransactionReceipt) {
        alert("restored");
    };

    window.plugins.inAppPurchaseManager.onFailed = function(errorCode, errorText) {
        alert("error");
    };

    window.plugins.inAppPurchaseManager.requestProductData(
        "com.mycompany.myproduct.myproductid", 
        function(productId, title, description, price) {
            alert("data retrieved");
            window.plugins.inAppPurchaseManager.makePurchase(productId, 1);
        },
        function(id) {
            alert("Invalid product id: " + id);
        }
    );
}

Надеюсь, вы сможете мне помочь! спасибо!

Ответы [ 2 ]

4 голосов
/ 30 августа 2012

Вам нужно вызвать js-функции, такие как window.plugins.inAppPurchaseManager.onPurchased в html.index, чтобы эти функции работали. Эти функции вызывают onPurchased в js и, соответственно, будут вызывать функции obj-C.

(функция js в index.html) -> (функция js в файле js) -> (функция target-C) ... - это последовательность.

0 голосов
/ 28 февраля 2012

Получаете ли вы неверный идентификатор продукта? Есть много ошибок на стороне Apple. Попробуйте прочитать это руководство , чтобы найти то, что вам нужно, чтобы получить информацию о продукте для возврата действительных продуктов.

...