2

我刚刚在我的手机上使用 API V2 实现并测试了 Android 应用内购买(因为我还需要实现订阅)。实际上,该应用程序并未发布,而仅处于草稿状态。

我已经测试过购买并且效果很好。

我对通知系统有一些我实际上不明白的问题。

1) 第一个问题

我有许多具有相同 Google 帐户的设备(因此我共享相同的购买项目)。我刚刚从设备 A 上的应用程序中正确购买了一件商品,但尚未通知另一台设备 B。

我是否必须在设备 B 上等待来自 Google Play 的一些通知,否则它永远不会发生?如果我是第二种情况,解决方案是什么?每次启动应用程序时都进行 RESTORE_TRANSACTION 吗?

问题1的更新解决方案:我认为问题在于我的谷歌帐户也是我的开发者控制台中的测试帐户。我实际上测试了它从测试列表中删除帐户并且运行良好。

2)第二个问题

我也试过退款系统。我已经从开发者控制台退还了我购买的商品(托管商品),但我从未收到 REFUND 事件。为什么?

如果我卸载该应用程序并再次安装它,RESTORE_TRANSACTIONS 会告诉我我退款的应用程序内仍处于 PURCHASED 状态。我做错了什么?

更新:订阅已退款(未过期但刚刚退款)。相反,托管的应用内购买仍处于 PURCHASED 状态,但在开发者控制台上,我已退款并取消了订单。为什么还处于购买状态?

3)第三个问题

我的用户进行了订阅,然后它就过期了。谷歌会向我发送 SUBSCRIPTION_EXPIRED 事件到我的应用程序还是让我总是执行 RESTORE_TRANSACTION?

4) 最后一个问题

我已经退还了订阅,它向我发送了退款事件。实际上订阅有效期到月底,所以我认为我需要从月底开始为用户提供订阅服务,我认为在此之后,如果用户不重新收费,我会得到一个SUBSCRIPTION_EXPIRES 事件。

我对吗?

谢谢,伊曼纽尔。

更新:更新了部分答案、另一个问题和更多细节。

4

1 回答 1

1

其实我做了一些步骤。

我购买的谷歌帐户也是我的开发者控制台中的测试帐户。这阻止了(我认为)要发送的 NOTIFY 事件。

现在我从市场上购买了一件新物品,它出现在我所有的设备上。

我还有其他问题和疑问(我将更新主要问题)

更新:对于托管的应用内购买(不是订阅),如果您向用户退款(不是取消订单,只是退款),这不会向您的应用程序发送任何事件(至少看起来如此)。如果您取消订单(从开发者控制台),它将发送一个 CANCELED 事件。

于 2013-01-15T16:30:19.280 回答