Функция покупки MKStoreKit ничего не делает - PullRequest
2 голосов
/ 27 марта 2012

Я пытаюсь заставить MKStoreKit работать с моей игрой Cocos2D.Это выглядит довольно просто, и я пару раз выполнил все шаги (чтобы проверить, правильно ли я это сделал), но я все еще не могу заставить его работать.Я могу получить название продукта, цену, описание и т. Д., Но я могу использовать общий MKStoreKitManager для совершения покупки.

Вот мой код для покупки продукта:

if([MKStoreManager isFeaturePurchased: @"com.testing.iap.removeAds"]) {      
        NSLog(@"No ads");
    }else{
        NSLog(@"Ads");

        NSLog(@"Buying feature...");

        [[MKStoreManager sharedManager] buyFeature: @"com.testing.iap.removeAds"
                                        onComplete:^(NSString* purchasedFeature)
         {
             NSLog(@"Purchased: %@", purchasedFeature);
             // provide your product to the user here.
             // if it's a subscription, allow user to use now.
             // remembering this purchase is taken care of by MKStoreKit.
         }
                                       onCancelled:^
         {
             NSLog(@"Something went wrong");
             // User cancels the transaction, you can log this using any analytics software like Flurry.
         }];  

    }

В основном, еслитовар ранее не покупался, начните процесс покупки.Проблема в том, что ничего не происходит!Я даже не получаю вызов onCancelled, и нет никаких сообщений об ошибках, кроме тех, которые я могу игнорировать (например, поддержка iCloud и пользовательские параметры сервера).

Может кто-нибудь пролить свет на то, что это останавливаетмне?

Примечание: Я тестирую на устройстве iPhone 4 под управлением iOS 5.1

Ответы [ 3 ]

2 голосов
/ 02 марта 2013

Как только ваше приложение запустится, позвоните:

[MKStoreManager sharedManager];

Вот и все. Пока вы вызываете метод -buyFeature: после загрузки продуктов (вы можете наблюдать kProductFetchedNotification , если хотите), все работает как положено.

0 голосов
/ 18 августа 2013

Убедитесь, что вы добавили свой IAP-ключ в MKStoreKitConfigs.plist . Без этого ничего не происходит.

Также может пройти несколько часов, пока регистр IAP станет доступным для тестирования.

0 голосов
/ 27 марта 2012

Понятия не имею, что не сработало, но потратив почти весь рабочий день, пытаясь заставить его работать, я решил начать новый проект с нуля и попробовать еще раз. Я сделал все точно так же, и все заработало!

...