将应用内结算版本2迁移到版本3的最佳方法是什么?

时间:2013-08-26 00:02:29

标签: android in-app-billing android-pay

周五我收到了Google电子钱包的电子邮件,说:

  

我们的记录显示您是Play Apps开发人员,他可能正在使用Google Checkout API进行通知或报告。 5月20日,我们宣布将取代这些API。

     

截至7月25日,我们提供了替换Play API,使用Checkout>通知或报告API的任何人都需要在8月22日之前实施Play API,以防止>中断您的脚本。

     

如果您使用Checkout API进行通知,请使用Play Purchase Status API。如果您使用Checkout API进行报告,则可以自动下载估算的销售额>并通过gsutil实用程序获取报告

我认为我必须使用的Google Checkout API与我所拥有的应用内结算版本2实施相关。它依靠计费服务通过本地通知与Google Play商店应用程序共享进程间通信。所以我相信我应该调查Play Purchase Status API。我调查了一下,但我想知道是否有任何教程或更好的文档来说明从旧的应用内结算版本2过渡到使用新的Google Play开发者API的过程。

Play Purchase Status API页面说明:

  

该API旨在用作后端服务器,用于安全地管理应用内产品和订阅,以及将其与其他服务进行扩展和集成。

这真的给我带来了困惑,因为所有购买请求和令牌都是由设备上的Android应用处理的。我的后端服务器只记录我的应用程序通过Web服务调用发送给它的信息。我的后端服务器现在是否应该通过Play Purchase Status API定期轮询Google电子钱包服务器?

4 个答案:

答案 0 :(得分:4)

谷歌现已发出电子邮件,是的,他们正在关闭应用内结算的V2。我写了一篇讨论如何迁移的博客文章(它更像是重写而不是迁移)。

http://www.innodroid.com/blog/post/migrating-from-in-app-billing-v2-to-v3

希望这可以帮助其他人。 V3完全不同(在我看来,虽然更容易理解和维护)。

答案 1 :(得分:3)

这与应用内结算版本2或您在应用中使用的内容无关。这是关于以前由Google Checkout提供的Web服务,这些服务已被弃用。除非您的应用程序直接访问这些Web服务,否则您无需在应用程序端执行任何操作。如果您有自己的Web应用程序(用于报告等)从Google Checkout API中提取数据,则必须更新或停止使用它。

答案 2 :(得分:0)

开发者控制台的公告部分:


从2015年1月27日开始,我们将终止对应用内结算第2版API的支持。使用应用内结算版本2 API进行的应用内购买将被屏蔽。

为帮助确保用户有时间更新其应用,我们建议您在2014年11月之前迁移您的应用以使用应用内结算版本3 API。


看起来我们应该一直到11月。

答案 3 :(得分:0)

对于那些正在寻找服务器到服务器API更新说明的人,唯一值得注意的区别是您将端点路径中的“ v2”更改为“ v3”。

以前是什么:

https://www.googleapis.com/androidpublisher/v2/applications/packageName/purchases/products/productId/tokens/token

现在是这样:

https://www.googleapis.com/androidpublisher/v3/applications/packageName/purchases/products/productId/tokens/token

他们还添加了一个名为“ acknowledgementState”的新字段,但这似乎毫无用处。如果您完全使用它来查看您购买的商品是否已消费且有效,则端点本质上是相同的。