Kev*_* Tu 5 android in-app-purchase google-play google-play-developer-api
当前,我使用一台服务器来接收GCP发布/ Purchase.Subscriptions:acknowledge订阅消息,并且我想执行一次呼叫以确认在服务器收到通知后尚未确认的订阅。
这是方案...
用户购买订阅A,期限为30天,然后升级到1年。在服务器端,当30天期限的订阅即将到期时,将收到升级交易的通知。当服务器使用检索信息时,Purchase.Subscription:Get您可以看到此升级后的交易的acceptState为0,因此服务器调用Purchase.Subscription:Acknowledge以确认此交易,但问题是它返回一条错误消息,说明“订阅购买不归用户所有” 。
错误消息如下所示:
{
"error": {
"errors": [
{
"domain": "androidpublisher",
"reason": "subscriptionNotOwnedByUser",
"message": "The subscription purchase not is owned by the user."
}
],
"code": 400,
"message": "The subscription purchase not is owned by the user."
}
}
Run Code Online (Sandbox Code Playgroud)
有人有同样的问题吗?
另一个信息是,在Android App中,我DEFERRED在BillingFlowParams类中将按比例分配模式设置为,这就是为什么我不能立即在App中确认新交易的原因,因为新交易的状态尚未被购买,我可以仅在服务器端进行确认。
小智 2
如果您正在实现Purchase.Subscription:AcknowledgePurchase对象,那么现在包含一个isAcknowledged()方法来指示购买是否已被确认。此外,服务器端 API 现在包括Product.purchases.get()和 的确认布尔值Product.subscriptions.get()。在确认购买之前,请务必使用这些方法来确定购买是否已被确认。
这里提到了如何集成这个
请查看下面的链接,这些链接可能会为您提供更多相关信息。
https://developers.google.com/android-publisher/api-ref/purchases/subscriptions/acknowledge
https://developers.google.com/android-publisher/api-ref/purchases/subscriptions/get
| 归档时间: |
|
| 查看次数: |
200 次 |
| 最近记录: |