17

Я реализую не обновляющуюся подписку IAP в своем приложении, где я делаю серверную реализацию для истечения срока подписки. Я застрял, когда я нажимаю подписку, которую я уже купил. Он показывает диалог, «Эта покупка в приложении уже куплена, и она будет восстановлена ​​бесплатно». с кнопкой ОК. У меня есть два вопроса:Непродолжительная подписка Уже приобретенный предупреждающий трек

  1. Иногда это показывает выше диалог, но иногда он показывает «Tap купить, чтобы возобновить или продлить его.» диалог. Может ли кто-нибудь сказать мне, в чем причина этого? Или это просто проблема с песочницей. (This screenshot from another thread.)
  2. Когда я получу «Эта покупка в приложении уже куплена, она будет восстановлена ​​бесплатно». предупреждение, как я могу остановить индикатор активности? Есть ли метод делегата для отслеживания этого?

Я не мог найти, но есть ли что-нибудь новое в iOS 8?

enter image description here

Спасибо

+0

У меня такая же проблема в песочнице iOS 8 с расходным типом продукта. Купил его один раз, он не может купить его снова ... хотя ясно сказано, что он расходуется. Weird. –

+0

У меня такая же проблема в песочнице iOS 8 –

+0

Облицовка одной и той же проблемы в нерасходуемой IAP. Но приложение было отправлено и одобрено ребятами iTunes. –

ответ

12
  1. Для невозобновляемых подписки, правильный диалог "Tap купить, чтобы возобновить или продлить его.". Причиной этого является то, что, когда принадлежащий не потребляемому продукту принадлежит, он постоянно находится в собственности; следовательно, «обновить или расширить» язык.

  2. Вы получаете это диалоговое окно, потому что вы пытаетесь приобрести тот же продукт еще раз, прежде чем завершить транзакцию на стороне приложения . App Store одобрил транзакцию и отправил вам идентификатор транзакции, но вы не подтвердили, что поставили обещанный контент/доступ. Таким образом, транзакция остается в состоянии approved. Транзакция остается привязанной к приложению, пока вы ее не закончите.

См. "Finishing the Transaction" in Apple's (confusing, convoluted) documentation.

+0

для вопроса 2, я знаю проблему, но как отслеживать этот диалог, потому что приложение все еще может отображать ActivityIndicator, чтобы показать, что статус все еще обрабатывается. – zedzhao

+0

Эй, тебе повезло решить эту проблему, можно ли удалить ActivityIndicator? –

0

Я столкнулся с этой проблемой в расходном IAP, и я вызвал функцию [[SKPaymentQueue defaultQueue] finishTransaction:transaction]. Затем я обнаружил, что перед вызовом произошла ошибка в функции, тогда я обмениваюсь положением двух функций, проблема решена сейчас.

+0

Благодарим вас за исправление грамматики, чувак. – Eanshy

+0

Можете ли вы объяснить, где поймать исключение. – zedzhao