Проверка покупки в приложении при запуске приложения - PullRequest
0 голосов
/ 17 января 2012

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

У меня возникает вопрос: как только пользователь нажимает кнопку «Купить мое приложение», я должен установить для переменной NSUserDefaults значение TRUE в моем приложении, чтобыЯ могу разблокировать все функции, которые были заблокированы.Это означает, что я проверяю, является ли NSUserDefaults ИСТИНОЙ, затем показываю им больше вещей.

Это лучший подход?Что я заметил, так это то, что если у пользователя есть несколько продуктов Apple (iphones / ipads) с одним и тем же идентификатором, и приобретенное приложение перемещается через облако на эти другие устройства, то ему придется снова нажать кнопку покупки, чтобы «разблокировать» функциина этих других приложениях.(так как я буду устанавливать переменную NSUserDefaults локально и устанавливать ее в значение ИСТИНА, если покупка была успешной или покупка восстановлена) Хотя он не получит двойную оплату, хотя это раздражает, если пользователь снова нажмет кнопку.

Есть ли лучший подход, который я могу использовать?

ИЛИ

Есть ли способ в коде, чтобы я мог проверить, купил ли он это приложение НА ЗАПУСК, чтобы я мог установить для приобретенных NSUserDefaults значение ИСТИНА.

1 Ответ

1 голос
/ 17 января 2012

Вы можете использовать restoreCompletedTransactions метод SKPaymentQueue, чтобы восстановить все покупки, которые пользователь приобрел ранее.Однако этот метод отображает предупреждение для пользователя для ввода его Apple ID и пароля.Так что не стоит использовать его при запуске.Вместо этого отобразите кнопку, которую пользователь может нажать, чтобы восстановить свои покупки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...