2015-03-23 4 views
3

В настоящее время я внедряю покупки In-App для нашего приложения iOS. В частности, я сейчас работаю над подписками. Мы предлагаем несколько условий для невозобновления подписки (1 месяц, 3 месяца, 6 месяцев) и подписку на автоматическое продление, которая длится 1 месяц за раз. Я установил систему, которая будет проверять всю ночь, если подписка на автообновление по-прежнему действительна и еще не была возвращена серверами проверки квитанций Apple. Для автоматического обновления подписки я могу ограничить это покупками, сделанными в прошлом месяце, так как после этого у меня должна быть либо новая транзакция для этого пользователя, либо срок действия подписки истек.Следует ли регулярно проверять подписку на iOS, не обновляющую подписку?

Мой вопрос заключается в том, что, если не обновляемые подписки также необходимо регулярно проверять, особенно для обновлений в поле cancellation_date. В поле Receipt Validation Programming Guide поле cancelation_date не говорит о том, что оно относится только к автообновлению подписки. Тем не менее, несколько других документов и ответов (извините за отсутствие ссылок здесь) предположили, что это то, что вам нужно только для проверки обновлений в автоматическом обновлении подписки.

Я думаю, что единственная причина, по которой не возобновляемые подписки всегда возвращаются в квитанции транзакции, так это то, что приложения, которые не хранят эту информацию на своем сервере, могут восстановить абонентскую подписку. Однако, если транзакция также обновляется, если в платеже происходят какие-либо изменения, я очень хотел бы следить за этой информацией.

Поскольку у нас есть большое количество пользователей, и нам нужно проверить либо только платежи за последний месяц, либо все платежи за последние 6 месяцев имеют большое значение, я хотел бы услышать ваше мнение (и, надеюсь, опыт) в этом отношении.

+0

Обратите внимание, что я ищу фактический опыт в этой проблеме или, в противном случае, некоторые убедительные доказательства. Просто «я бы догадался ...» мне не очень помогает, так как это до тех пор, пока я не получил себя на этом этапе;) –

+0

@ У вас есть какой-либо код repos/sample GitHub, показывающий эту систему, у вас есть опрос серверов Apple и проверить пользователей, подписавшихся на вашу систему? Сейчас я сталкиваюсь с одной и той же проблемой. – GGCO

+0

Мы этого не делаем, поскольку код нашей компании не является открытым. Однако есть множество примеров частей системы по всему Интернету. В основном, ваш рабочий процесс будет «покупать в приложении» -> «отправить квитанцию ​​на ваш сервер» -> «проверить получение с помощью Apple» -> «сохранить статус/ошибку подписки в вашей базе данных» -> «сообщить вашему приложению самую последнюю подписку» информации для вашего пользователя ». Некоторые из этих частей - это просто ваша собственная реализация для приложения и сервера, но такие детали, как «проверка получения с Apple», имеют множество примеров в Интернете. –

ответ

2

Я думаю, что количество пользователей, которые будут пытаться обмануть вашу систему, вероятно, будет небольшим процентом. Если вы параноик, вы все равно должны проверить все подписки. Вероятно, вам нужно получить статистику по количеству пользователей, которые обманывают покупки приложений. Взвешивайте стоимость проверки с суммой, которую вы стоите, чтобы не потерять, не проверяя, сколько денег вам важно. Я лично нахожу это жадным, чтобы тщательно проверить и убедиться, что ваша система полностью чит-доказательство: особенно когда вы продаете программное обеспечение - когда украденные копии не стоят вам ничего.

+0

Хотя это был не совсем тот ответ, который я надеялся получить, это по-прежнему актуальный вопрос. Благодаря! –

Смежные вопросы