我有一个应用程序,正在尝试了解应用程序内计费。我想这样做:如果用户使用应用内结算购买商品。用户可以在其他设备上的同一帐户中使用此商品,而无需再次付款。所以我的场景是这样的:

假设我有一个应用程序,并且它具有应用程序内结算V3服务。然后,用户购买“被管理产品”项目,并且该用户拥有另一台设备,那么该用户希望将该已购买的项目安装到其他设备中,而无需再次付费。但是我在这里读到,人们谈论这个问题:


  BILLING_RESPONSE_RESULT_ITEM_ALREADY_OWNED


目前,我正在考虑购买该产品后立即食用。使用此代码:

mHelper.consumeAsync(inventory.getPurchase(SKU_MY_ITEM), mConsumeFinishedListener);


如果正确的方法。用户在另一台设备上点击“购买”按钮后会看到什么(可以免费购买)

另外,如果用户再次卸载并安装我的应用程序,我不确定会发生什么。如果单击购买按钮,用户将看到什么。 (再次购买或免费购买或出现错误)

您能否提供有关一个帐户和多个设备的应用程序计费服务的建议,以及是否可以在其他设备上进行购买(即使一切正常)的用户的建议?

最佳答案

从这里http://developer.android.com/google/play/billing/api.html


  应用内托管产品
  
  应用内托管产品是拥有所有权的项目
  Google Play跟踪和管理的信息。用户购买时
  托管的应用内商品,Google Play会存储以下商品的购买信息:
  每个项目都基于每个用户。这使您以后可以查询Google
  随时播放以恢复特定用户拥有的项目的状态
  购买。此信息在Google Play服务器上是持久的
  即使用户卸载了该应用程序或他们更换了设备。


您想要做的是(如在示例应用程序中)在成功设置应用程序内服务时查询库存,并使用任何托管项目,从而授予对该项目的访问权限。

10-07 14:27
查看更多