假设我提供了一款二合一应用:免费版和付费版。如果用户付费,那么他可以在应用程序中获得额外的功能。
为了简化任务和理解,我采用了示例应用程序。然后,我在主屏幕上增加了一个按钮(这是我们的"付费"功能)——这个按钮默认是禁用的。如果用户为药水付费(在示例应用程序中),则应该启用此按钮。
那么,我有以下问题:
- 哪些函数需要修改在示例应用程序中启用按钮一旦用户付费?为了简化任务另外,我们可以假设用户可以购买只有汤剂,没有别的。看起来好像这是不够的
myButton.setEnabled(true)
来onPurchaseStateChange / if (purchaseState == PurchaseState.PURCHASED)
。还有,我需要这个按钮如果用户,在应用程序启动后启用支付。我应该在里面做吗restoreDatabase
吗?我需要打电话吗这是restoreDatabase
。onStart()
也? - 同样的问题是关于按钮禁用-我应该在哪里做这个?
- 一旦按钮被启用,如果用户按下它,我需要验证一下用户确实为应用程序付费(不要仅仅依赖于数据库值)-看起来我应该调用
RESTORE_TRANSACTIONS
。然后基于结果显示警告和禁用按钮,或允许进一步行动。
AndroidBillingLibrary的使用简化了任务