在Android应用内购买中获取订阅数据

4
我正在将Google应用内购买(特别是订阅)集成到我们的应用程序中。现在我无法弄清楚如何从IMarketBillingService(Google Play)获取以下数据到我的应用程序中:
- 价格信息 - 订阅到期日期(当前付款周期) - 如果用户取消正在进行的订阅,则通知
以下代码解析了来自获取购买信息的JSON对象,但其中没有价格字段。然而,Google IAP文档表示价格可用!
JSONObject jElement = jTransactionsArray.getJSONObject(i);
int response = jElement.getInt("purchaseState");
PurchaseState purchaseState = PurchaseState.valueOf(response);
String productId = jElement.getString("productId");
String packageName = jElement.getString("packageName");
long purchaseTime = jElement.getLong("purchaseTime");
String orderId = jElement.optString("orderId", "");
String purchase_token = jElement.optString("purchaseToken", "");
String notifyId = null;
if (jElement.has("notificationId")) {
  notifyId = jElement.getString("notificationId");
}
String developerPayload = jElement.optString("developerPayload", null);

需要帮忙吗?


我自己注意到了取消订阅的答案:Google Play在订阅因为未付款或用户取消而过期之前不会通知您的应用程序购买状态的更改。 - perza
1个回答

5
  • 价格信息

Google Play的计费服务不提供价格信息。如果您真的需要,可以通过记录您的项目价格并猜测用户的货币来自行提供该信息。

  • 订阅到期日期(当前付款周期)

请参阅订阅 API指南中的“检查订阅有效性”。有一个基于HTTP的API可以轮询 Google Play 以获取订阅的当前购买状态。

  • 如果用户取消正在进行的订阅,则通知

没有提供。根据订阅 API指南

如果用户取消订阅,则 Google Play 认为该订阅在当前计费周期内仍然有效。用户将在该周期的剩余时间内继续享受内容,而不会获得退款。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接