#android #in-app-purchase #google-play #billing
#Android #покупка в приложении #google-Play #выставление счетов
Вопрос:
Допустим, я предоставляю приложение 2 в 1: бесплатную и платную версии. Если пользователь заплатил, то он получает дополнительные функции, доступные в приложении.
Чтобы упростить задачу и понимание, я взял пример приложения. Затем я добавил еще одну кнопку на главный экран (это наша «платная» функция) — по умолчанию эта кнопка отключена. Если пользователь заплатил за Potion (в примере приложения), то эта кнопка должна быть включена.
Итак, у меня есть следующие вопросы:
- Какие функции следует изменить в примере приложения, чтобы включить кнопку после оплаты пользователем? Чтобы еще больше упростить задачу, мы можем предположить, что пользователь может купить только зелье, ничего больше. Похоже, что только добавить
myButton.setEnabled(true)
вonPurchaseStateChange / if
недостаточно. Кроме того, мне нужно включить эту кнопку после запуска приложения, если пользователь заплатил. Должен ли я сделать это в
(purchaseState ==
PurchaseState.PURCHASED)restoreDatabase
? Нужно ли мне также вызывать этоrestoreDatabase
вonStart()
приложении? - Тот же вопрос касается отключения кнопки — где мне это сделать?
- Как только кнопка включена, если пользователь нажимает ее, мне нужно убедиться, что пользователь действительно заплатил за приложение (не полагайтесь только на значение базы данных) — похоже, я должен позвонить
RESTORE_TRANSACTIONS
. Затем на основе результата либо отобразите предупреждение и кнопку отключения, либо разрешите дальнейшие действия.
Комментарии:
1. пожалуйста, поделитесь своим кодом, если у вас есть какие-либо успехи с ним.
Ответ №1:
Использование AndroidBillingLibrary упрощает задачу.