我目前正在设计我的实现策略,以实现应用内结算中可能的状态更新(从购买的状态到取消的状态,等等),这确实令人头疼,而且存在一个困惑:

我在应用程序中获取getPurchases()。这给了我INAPP_PURCHASE_DATA,其中包含带有以下字段的Table 6:



我想将其中一些变量发送到我的服务器(尽管purchaseToken似乎很有用),但是我有一些不清楚的地方:
在服务器端,我要不断检查购买是否有效。我打算用https://developers.google.com/android-publisher/api-ref/purchases/subscriptions/get做到这一点

但是此请求需要 packageName,subscriptionId token 。 token 是来自 getPurchases() PurchaseToken ,但订阅ID 产品ID getPurchases()吗?

当您使用invoke the manual for creating a product list in Google Play时,您会在此处看到本手册的标题在步骤4一次将一个项添加到产品列表 单击“创建被管理产品”或“根据需要创建订阅”。 ,您必须在第5步中设置 productId

如果 productId == subscriptionId ,那么为什么会有两个Google Play开发者API请求,一个是“产品”,一个是“订阅”,那么订阅不是产品吗?看:

https://developers.google.com/android-publisher/api-ref/purchases/products/get
https://developers.google.com/android-publisher/api-ref/purchases/subscriptions/get

第一个请求使用 productId ,但是第二个请求使用我没有的 subscriptionId ,但productId和subscriptionId相同。
这非常令人困惑。

最佳答案

经过将近5(!)个月,我在应用程序和后端服务器上完成了整个应用程序内计费实现。
现在,我可以确认productId == subscriptionId == sku。

关于android - 应用内结算: Is ProductID and SubscriptionID the same?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47242976/

10-10 22:47