2015-03-30 3 views
1

Я делаю игру, где есть только расходуемые для покупки. Использование Google In-app Billing v3.Должен ли я покупать предмет, прежде чем я смогу его использовать? (Google In-app billing)

Мои предметы неуправляемы, и я пытаюсь заставить их потребляться. Проблема заключается в следующем:

Когда я использую код для «потребления» продукта, он выдает сообщение об ошибке, в котором говорится, что элемент должен быть куплен для потребления или что я не запрашивал инвентарь успешно (но я сделал).

И когда я использую код для «покупки» предмета, он говорит, что он уже принадлежит, когда я пытаюсь его снова купить.

Так как же это работает? Нужно ли мне создавать комбинацию «покупки» и «потреблять» в моем коде? Должен ли мой код сначала смотреть, был ли куплен предмет, и если да, то он запустит команду «потреблять»?

Спасибо за разъяснение

ответ

0

Вы должны первый запрос приобрели элементы с сервера при запуске приложения

public void queryInventoryAsync(QueryInventoryFinishedListener listener) 

Если есть какие-либо расходные материалы, отправьте расходуемый запрос на сервер

Quoting the docs

Важно проверять расходные материалы w при запуске пользователя ваше приложение. Как правило, вы сначала запрашиваете услугу In-app Billing для товаров, приобретенных пользователем (через queryInventoryAsync), , а затем приобретайте объекты Purchase из Inventory. Если ваше приложение обнаруживает, что это любые предметы потребления, принадлежащие пользователю , вы должны немедленно отправить запрос на потребление в Google Play и предоставить элемент пользователю. См. Пример TrivialDrive для примера того, как реализовать эту проверку при запуске

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