Предположим, что пользователь iOS покупает подписку на автоматическое продление. Я знаю, что NSBundle.mainBundle().appStoreReceiptURL
показывает какую-то цифровую квитанцию, которую я могу использовать для проверки покупки и продолжения подписки.Включает ли отказ iOS In-App-Purchase в NSBundle.mainBundle(). AppStoreReceiptURL
Затем после некоторого момента пользователь отменяет подписку.
Вопросы:
Когда пользователь отменяет подписку,
- Отражает ли
NSBundle.mainBundle().appStoreReceiptURL
, что отмена сразу?
Я скептически отношусь к этому вопросу, потому что NSBundle.mainBundle()
используется, чтобы поднять то, что хранится локально в приложении. Если пользователь отменяет подписку, перейдя на настройки ОС, и она отправит уведомление определенного типа на Apple Server, Apple Server должен как-то уведомить об этом приложение.
Если каким-то образом
NSBundle.mainBundle().appStoreReceiptURL
отражает отмену сразу. Как Apple это делает? Или мне нужно реализовать протокол, чтобы получить информацию об аннулировании?Если, на самом деле, мне нужно запустить протокол, выполняйте ли другие приложения каждый раз при запуске приложения?
Как вы говорите, если пользователь отменил подписку на автоматическое продление, когда я обновляю свою квитанцию, NSBundle.mainBundle(). AppStoreReceiptURL покажет нуль? – shle2821
Пользователь не может отменить подписку. Если они попросят Apple отменить подписку, то квитанция будет обновлена, чтобы соответствующий элемент покупки в приложении в квитанции имел «cancelation_date». 'NSBundle.mainBundle(). AppStoreReceiptURL' всегда имеет значение даже без покупок inapp, поскольку квитанция содержит сведения о самой покупке приложения (даже если она бесплатна) – Paulw11
Я могу подтвердить, что если пользователь отменяет подписку, квитанция всегда – Andrea