Как сделать пробную (триал) версию с возможностью купить полную версию по истечению срока? [закрыт]

170
05 марта 2019, 09:20

Есть идея для приложения и хотелось бы сделать 30 дней пробную триал версию с возможностью купить полную версию по истечению срока. Как это можно реализовать?

Answer 1

Вариантов много, информации мало. Например, как будет происходить оплата (разовый платеж или подписка) (прием оплаты через playmarket или сторонний сервис). С конкретным примером не помогу, но как варианты:

1) Сохраняешь в preferences при первом запуске дату, после при каждом запуске сравниваешь, если прошло более 30 дней урезаешь функционал, либо вообще оставляешь только вариант с приобретением.

2) Есть ли серверная часть для приложения? Информацию можно хранить там например.

3) Необходимо больше информации, т.к. реализация зависит от требований.

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

P.S. Как работать с playmarket не представляю даже, т.к. сам принимаю оплату через агрегатора и вся информация о продлении подписки находится на сервере. В приложении же сложная логика ограничения/отключения PRO функционала пока не будет продлена подписка опять же через приложение.

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

По правилам Google Play и AppStore разработчик мобильного приложения имеет право принимать платежи с использованием сторонних платежных систем только для продажи нецифровых товаров, или цифровых товаров, которые можно использовать вне приложения.

UPD: ВАЖНО!!! В первом варианте сбрасывается до триала простой очисткой данных и кэша приложения. Т.е. опять же, степень "заморочитости" зависит от требований. Лучше переформулировать вопрос.

READ ALSO
найти css selector по тексту

найти css selector по тексту

Подскажите пожалуйста, как записать селектор для следующего элемента:

156
Как отправить значение enum на сервер?

Как отправить значение enum на сервер?

Команда состоит из 3 параметров: Integer id, time, channel (enum: abc/cba) param

345
Module 'Name' is imported from Gradle

Module 'Name' is imported from Gradle

Хочу импортировать библиотеку jsoup, но при импорте пишет:

192
Как сохранить заряд батареи Android-устройства (программно)?

Как сохранить заряд батареи Android-устройства (программно)?

Есть устройствоДнем оно питается от сети, а ночью сеть выключают

146