Android anjlab 应用内结算 - 收费
Android anjlab in-app billing - chargeable
我正在使用 Android anjlab 应用内结算库,并注意到此行为:
进行购买(它们都是订阅)并立即从卡中扣款时,一切正常:
方法 onProductPurchased() 被调用,然后我可以调用我的服务器,让用户 Premium 访问我的应用程序。
但是,在商家工具(Google 控制台)查看交易日志时,我注意到很多时候,信用卡并不是立即 charged - 它们会在 chargeable 状态停留几个小时到几天,而实际上它们会进入 charged.
问题是,当付款进入此 chargeable 状态时,onProductPurchased() 方法 不会被调用 因此也不会我的服务器。
在这些情况下,我的用户会被收费(在我的应用中购买订阅数小时后),但他们永远无法获得高级访问权限,因为我无法在我的应用中识别付款(仅通过查看商家日志)!!
如何解决这个问题?
我是否需要对我的应用进行某种检查 运行,以验证用户是否购买了订阅?
一般来说,您的应用应尽可能检查用户钱包中是否有尚未转换为升级的有效收据,例如在启动时。
这在购买过程中出现错误时也很有用,或者在用户更改他的 phone 或卸载并重新安装应用程序时恢复购买。
自从我上次处理这些东西已经有一段时间了,但我认为,根据 Google 播放政策,您实际上 需要 提供恢复机制。
我正在使用 Android anjlab 应用内结算库,并注意到此行为:
进行购买(它们都是订阅)并立即从卡中扣款时,一切正常:
方法 onProductPurchased() 被调用,然后我可以调用我的服务器,让用户 Premium 访问我的应用程序。
但是,在商家工具(Google 控制台)查看交易日志时,我注意到很多时候,信用卡并不是立即 charged - 它们会在 chargeable 状态停留几个小时到几天,而实际上它们会进入 charged.
问题是,当付款进入此 chargeable 状态时,onProductPurchased() 方法 不会被调用 因此也不会我的服务器。
在这些情况下,我的用户会被收费(在我的应用中购买订阅数小时后),但他们永远无法获得高级访问权限,因为我无法在我的应用中识别付款(仅通过查看商家日志)!!
如何解决这个问题?
我是否需要对我的应用进行某种检查 运行,以验证用户是否购买了订阅?
一般来说,您的应用应尽可能检查用户钱包中是否有尚未转换为升级的有效收据,例如在启动时。
这在购买过程中出现错误时也很有用,或者在用户更改他的 phone 或卸载并重新安装应用程序时恢复购买。
自从我上次处理这些东西已经有一段时间了,但我认为,根据 Google 播放政策,您实际上 需要 提供恢复机制。