Функция покупки MKStoreKit ничего не делает
Я пытаюсь заставить 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 ответа
Я понятия не имею, что не работает, но потратив почти весь рабочий день, пытаясь заставить это работать, я решил начать новый проект с нуля и попробовать снова. Я сделал все точно так же, и все заработало!
Как только ваше приложение запустится, позвоните:
[MKStoreManager sharedManager];
Вот и все. Пока вы вызываете метод -buyFeature: после загрузки продуктов (вы можете наблюдать kProductFetchedNotification, если хотите), все работает как положено.
Убедитесь, что вы добавили свой ключ IAP в список MKStoreKitConfigs.plist. Без этого ничего не происходит.
Также может пройти несколько часов, пока регистр IAP станет доступным для тестирования.