Допустим, я предоставляю приложение 2-в-1: бесплатную и платную версию.Если пользователь заплатил, то он получает дополнительные функции, доступные в приложении.
Чтобы упростить задачу и понимание, я взял образец приложения .Затем я добавил еще одну кнопку на главный экран (это наша «платная» функция) - эта кнопка по умолчанию отключена.Если пользователь заплатил за зелье (в примере приложения), то эта кнопка должна быть включена.
Итак, у меня есть следующие вопросы:
- Какие функции необходимо изменить в примере приложения, чтобы включить кнопку после оплаты пользователем?Чтобы еще больше упростить задачу, мы можем предположить, что пользователь может купить только зелье, ничего более.Похоже, недостаточно добавить
myButton.setEnabled(true)
только к onPurchaseStateChange / if
(purchaseState ==
PurchaseState.PURCHASED)
.Кроме того, мне нужно включить эту кнопку после запуска приложения, если пользователь заплатил.Должен ли я сделать это в restoreDatabase
?Нужно ли также вызывать этот restoreDatabase
в onStart()
? - Тот же вопрос касается отключения кнопок - где мне это делать?
- Если кнопка включена, если пользователь нажимает ееМне нужно убедиться, что пользователь действительно заплатил за приложение (не полагайтесь только на значение базы данных) - похоже, я должен позвонить
RESTORE_TRANSACTIONS
.Затем на основе результатов либо отобразите предупреждение и кнопку отключения, либо разрешите дальнейшие действия.