2013-08-30 3 views
0

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

Вопрос в том, что является правильным способом проверки, скажем, раз в месяц? Я мог бы подтвердить даты и убедиться, что месяц прошел, но пользователь может легко изменить время даты устройства. Я думал о том, что у вас есть счетчик использования, а после использования X требуется, чтобы пользователь подключался к сети и подключался к серверу.

Правильно ли это? или есть безопасный способ получить системную дату и быть уверенным, что пользователь не вмешался?

спасибо.

+0

Как мог пользователя подменить даты, если вы делаете это на стороне сервера? Просто подтвердите, платили ли они серверную сторону каждый раз, когда они открывают приложение. – Darussian

+0

Нехорошо, заставляя пользователя подключаться к сети каждый раз, когда они открывают приложение, неприемлемо, это приложение должно работать в сельской местности, для людей, которые работают с крупным рогатым скотом и такие и интернет-соединения не всегда доступны при работе на поле. Мне нужен способ заставить пользователя подключаться, но только время от времени, а не каждый раз. –

+0

Я бы не беспокоился о том, что люди спутывают системные часы. Я считаю, что это возможно только на корневых устройствах и сделано через adb. Немногие, если таковые будут иметь возможность сделать это. – Darussian

ответ

0

Вы должны сделать это, подтвердив даты. Сохраните дату в sqlite db и каждый месяц (или что вам угодно) проверьте лицензию. Каждый раз, когда ваше приложение запускается или выходит, сохраняется текущее время. Если в следующий раз системная дата будет более ранним значением, вы знаете, что время было изменено.

Взял часть моего ответа здесь: How does my app tell if the current date is the real current date?

+0

Звучит неплохо сохранить дату каждого раза, когда пользователь открывает приложение, проверяет наличие дубликатов или новую дату раньше, чем остальные (это означает, что дата была изменена). Благодарю. –

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