首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在应用程序购买Android中:购买已经购买的产品时,Google Play没有响应

在应用程序购买Android中:购买已经购买的产品时,Google Play没有响应
EN

Stack Overflow用户
提问于 2012-09-18 20:17:10
回答 1查看 1.3K关注 0票数 0

我正在Android上测试应用内计费。我可以购买托管产品,并从服务器获得预期的响应。然而,当我尝试从同一设备重新购买托管产品时,我没有从google play获得任何响应。

代码语言:javascript
复制
When re-buying I do get the popup message titled "Item already purchased", but then there's no response.But the amazing thing is i got response all time earlier.Even if i am trying to re buy same product from same device. Can anyone help me to resolve the issue? 

另外,有没有办法检查产品是否已经购买?

代码:

代码语言:javascript
复制
@Override
 public void onPurchaseStateChange(PurchaseState purchaseState,
                               String itemId, int quantity, long purchaseTime,
                               String developerPayload) {}

当我尝试重新购买时,没有调用onPurchaseStateChange()函数。

只得到一个RESULT_ERROR响应onRequestPurchaseResponse()从谷歌play.But我是我能够在第一次购买的产品,并得到了PurchaseState.PURCHASED status.In的情况下,重新购买没有状态返回。这是因为与Google Play相关的服务器错误吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-10-01 07:40:14

您不应该重新购买托管项目。如果要多次销售某物,请使用非托管项。

作为对试图重新购买你已经拥有的东西的回应,RESULT_ERROR似乎是合理的。如果没有发生购买,您将不会请求一个采购状态已更改消息。

是否确实没有将正在使用的项从非托管更改为托管?或者,您以前使用的是测试产品,现在使用的是真正的产品?(你可以一遍又一遍地购买android.test.purchased )

你的应用程序应该跟踪已经进行的购买,这样你就可以将托管项目标记为已购买,以防止用户试图重新购买它们(这样他们就知道他们已经购买了)。

你唯一需要检查用户是否已经拥有你的任何托管项目的时候是他们是否重新安装了你的应用程序。在这种情况下,您可以调用恢复事务并更新应用程序的本地记录,以记录已购买的内容。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12476863

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档