如何在游戏中实施“禁用广告”购买?


18

我想在我的游戏中添加“无广告”服务,以便一次性付款即可删除广告。如何正确实施?

如果我只是保存了该服务是在设备上本地支付的事实,那么如果用户以某种方式删除了应用程序的数据,则将不得不再次支付。


1
问题的第二部分太广泛了(我看到Byte已经将其编辑掉了);问题的第一部分尚不清楚。您是在道德上还是道德上问这是否可以?还是您在问如何保存已在设备上付费的事实?

1
现在,我只是假设您正在问问题,因为这是解释问题的唯一远程主题方法。

Answers:


29

如果您使用Google Play的应用内购买API来实施“禁用广告”购买,则基本上可以由您完成。您将要创建用户可以购买的非消耗性产品。从本质上讲,非消耗性产品代表永久利益或解锁。用户可以将此类购买的内容恢复到擦除/清洁/新手机上,因此他们永远不需要重新购买禁用的广告。

本页包含有关将IAP API与您的游戏集成的详细说明。这些步骤实质上是:

  • 将库添加到您的项目并更新清单文件。
  • IInAppBillingService通过服务连接绑定到。
  • 通过该接口向服务发送和接收适当的数据(getSkuDetails以获取可用产品的列表,getBuyIntent开始购买交易等)。

您还需要通过进行测试,getPurchases以查看用户是否购买了“禁用广告”项目(如果已购买,则实际上是禁用了广告)。

您可以从Google Play开发者控制台创建实际的“禁用广告”可购买项。


因此,等等,Google提前知道应用程序是否具有“消耗性” IAP?然后,他们应该在商店中真正地透露这一点;“拥有应用内购买”可能意味着任何事情。
Random832 '16

3
@ Random832不,我不这么认为。它仅知道产品是否为订阅。您可以为任何非订阅产品发送“ consumPurchase”请求,而不是消耗品本身。我猜他们理论上可以尝试扫描您的二进制文件并针对该接口查找调用,但是我怀疑它们会打扰您。

1
IAP和API彼此相似的说法并非巧合。
ArtOfCode

我用自己的舌头试图发音IAP API ...
StorymasterQ

10

如果您没有按照Josh的回答使用Google Play的工具(尽管我建议您使用这些工具)。您必须自己管理此信息。

您可能要避免将某些内容本地存储在用户的设备上。用户不需要为每台设备或每次安装删除广告付费。

您需要维护一个包含已付费用户的数据库。启动后(每次他们在其他设备上购买了广告移除服务时),您的应用程序都会检查数据库,如果找到了用户帐户,则将对该安装永久禁用广告。用户帐户信息应该是用户唯一的,最好是用户用来购买广告删除的Google帐户。

用户购买广告删除后,您可以将其帐户信息添加到数据库中并禁用其广告。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.