Подтвердить что ты не робот

Необходима ли регистрация входа в приложение?

Я интегрирую покупки в приложении в свое приложение, оно отлично работает для покупки и восстановления предметов. Но есть одна проблема,

Когда я покупаю товар с помощью [email protected], он успешно приобретает товар и восстанавливает его работоспособность.

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

Когда я нажимаю на кнопку восстановления, появляется два всплывающих окна: одно с [email protected], второе - выход или создание пользователя.

Всякий раз, когда я перехожу с фона на передний план, каждый раз отображается всплывающее окно входа.

ПРИМЕЧАНИЕ: я тоже вызывал метод finishTransaction. Но это не работа для меня.

Ни один метод не вызывается при отображении всплывающего окна входа.

enter image description here

Как я мог решить это?

4b9b3361

Ответ 1

Насколько я знаю, это происходит в двух случаях.

  1. Есть ожидающая транзакция. Если какая-либо транзакция покупки еще не завершена, iOS попытается выполнить эту транзакцию автоматически.

  2. Некоторые из автоматически возобновляемых подписки должны быть продлены. iOS также автоматически запускает транзакцию покупки для автообновляемой транзакции, если включена настройка автообновления и истек срок подписки.

Это срабатывает, когда наблюдатель транзакции добавляется в очередь платежей.

[[SKPaymentQueue defaultQueue] addTransactionObserver: yourTransactionObserver];

В любом случае, вы можете поставить точку останова в вашем наблюдателе транзакции

- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions

и понять, какая транзакция обрабатывается.

По сути, у SKPaymentQueue нет функции отмены текущей транзакции приложением, поэтому вы должны продолжить эту транзакцию.

Ответ 2

Это происходит в среде песочницы не всегда. Как только ваше приложение будет жить, а в приложениях одобрят Apple, все будет нормально работать.

Однако ваш поток кода покупки внутри приложения должен быть правильным. iOS автоматически запрашивает параметры входа, если вы еще не вошли в систему, иначе будет отображаться всплывающее окно для ввода пароля, а имя пользователя/адрес электронной почты будет автоматически заполнено.