0

我正在使用Android anjlab应用内计费库,并注意到这种行为:

当进行购买(它们都是订阅)并立即从卡中扣款时,一切正常:

方法 onProductPurchased() 被调用,然后我可以调用我的服务器以授予用户对我的应用程序的高级访问权限。

但是,查看商家工具(谷歌控制台)上的交易日志,我注意到很多时候,信用卡并没有立即收费——它们在几个小时到几天内处于收费状态,而实际上移动到充电

问题是,当付款进入这种收费状态时,不会调用onProductPurchased() 方法,因此我的服务器也不会调用。

在这些情况下,我的用户会被收费(在我的应用程序中购买订阅后的几个小时),但他们从未获得高级访问权限,因为我无法识别我的应用程序中的付款(仅通过查看商家日志)!

如何解决这个问题?

我是否需要在我的应用程序上运行某种检查,以验证用户是否购买了订阅?

4

1 回答 1

1

通常,您的应用应始终检查,例如在启动时,用户的钱包中是否有有效收据,但尚未转换为升级。

这在购买过程中出现错误时也很有用,或者在用户更换手机或卸载并重新安装应用程序时恢复购买。

自从我上次处理这些东西以来已经有一段时间了,但我认为,根据 Google Play 政策,您实际上需要提供恢复机制。

于 2018-09-14T14:02:35.980 回答