#iphone
#iPhone
Вопрос:
Я новичок; Я пытаюсь решить эту проблему, но не могу этого сделать.
Я создал приложение, которое отображает несколько параметров в таблице. Когда пользователь нажимает на ячейку, подробная информация о выбранной опции отображается на другой странице (подробная информация хранится в файле plist).
Что я хочу сделать, так это настроить его так, чтобы, если пользователь приобрел приложение, были видны только детали, но если пользователь его не приобрел, пользователю должно быть предложено это сделать.
Я создал идентификатор продукта для iTunes Connect, а также создал тестовую учетную запись для тестирования приложения.
Моя проблема с кодом: как я должен проверить, совершил ли пользователь покупку?
Ответ №1:
Использование NSUserDefaults — самое простое решение.
После успешной покупки:
[[NSUserDefaults standardUserDefaults] setObject:@»purchased» forKey:@»myPaidItem»]; [[NSUserDefaults standardUserDefaults] синхронизировать];
И когда вам нужно проверить, приобрел ли пользователь товар:
NSString* Приобретается = [[NSUserDefaults standardUserDefaults] stringForKey:@»myPaidItem»];
если ([@сравнение «приобретено»: приобретено] == заказано одинаково) { …….. }
Надеюсь, это поможет
Комментарии:
1. если это правильный ответ на ваш вопрос, я был бы признателен за пометку как таковую
2. Вопрос: если пользователь решит удалить приложение и установить его снова, ему придется выкупить оплаченный товар, верно?
3. Да, ему нужно снова приобрести товар, хотя с него не будет взиматься плата за покупку. Появляется предупреждение с надписью «Вы уже приобрели этот товар, хотите загрузить его сейчас?», и процесс продолжается, как если бы он его приобрел (если срок действия вашей покупки в приложении не истек).
Ответ №2:
вы должны сохранить эту информацию в AppContext в виде bool, если транзакция прошла нормально, boo = true, и когда он захочет купить в другой раз, вы должны проверить значение boo, которое хранится в контексте приложения