我正在使用Android anjlab应用内计费库,并注意到这种行为:
当进行购买(它们都是订阅)并立即从卡中扣款时,一切正常:
方法 onProductPurchased() 被调用,然后我可以调用我的服务器以授予用户对我的应用程序的高级访问权限。
但是,查看商家工具(谷歌控制台)上的交易日志,我注意到很多时候,信用卡并没有立即收费——它们在几个小时到几天内处于收费状态,而实际上移动到充电。
问题是,当付款进入这种收费状态时,不会调用onProductPurchased() 方法,因此我的服务器也不会调用。
在这些情况下,我的用户会被收费(在我的应用程序中购买订阅后的几个小时),但他们从未获得高级访问权限,因为我无法识别我的应用程序中的付款(仅通过查看商家日志)!
如何解决这个问题?
我是否需要在我的应用程序上运行某种检查,以验证用户是否购买了订阅?