Я использую Android anjlab Библиотека биллинга в приложении и заметил следующее:
Когда совершается покупка (все они подписки) и сразу снимается карта, все работает нормально:
вызывается метод onProductPurchased (), и я могу затем вызвать мой сервер, чтобы предоставить пользователю Premium доступ к моему приложению.
Но, просматривая журналы транзакций в инструментах Merchant (консоль Google), я заметил, что во многих случаях кредитные карты не сразу списываются - они остаются в платной состояние от нескольких часов до пары дней, когда они фактически переходят на взимается .
Проблема в том, что когда платеж переходит в это состояние подлежит оплате , метод onProductPurchased () не вызывается и, следовательно, ни мой сервер.
В этих случаях с моих пользователей взимается плата (через несколько часов после покупки подписки в моем приложении), но они никогда не получают премиум-доступ, поскольку я не могу определить платежи в своем приложении (просто просматривая журналы продавца)! !
Как это исправить?
Нужно ли запускать какую-то проверку в моем приложении, чтобы проверить, купил ли пользователь подписку?