本参考文档包含了 Purchase 类以及其方法的详情。
public class Purchase extends Object
java.lang.Object
gg.now.billingclient.api.Purchase
Purchase 是 PurchasesResult 类的一部分,用于应用内购买。
Purchase
Purchase (String jsonPurchaseInfo, String signature)
throws JSONException
| 参数 | 描述 | 抛出异常 |
|---|---|---|
| jsonPurchaseInfo | String | jSONException |
| signature | String |
| 描述 | 用法 | |
|---|---|---|
| boolean | equals(object o) | boolean gg.now.billingclient.api.Purchase.equals (Object o) |
| String | getOrderId() – 返回交易的唯一标识符。 | String gg.now.billingclient.api.Purchase.getOrderId() |
| String | getOriginalJson() – 返回包含了购买订单详情的JSON字符串。点击此处查看详细信息. | String gg.now.billingclient.api.Purchase.getOriginalJson() |
| String | getPackageName() – 返回发起购买的应用包名。 | String gg.now.billingclient.api.Purchase.getPackageName() |
| long | getPurchaseTime() – 返回购买的时间。 | long gg.now.billingclient.api.Purchase.getPurchaseTime() |
| String | getPurchaseToken() – 返回作为唯一标识符的购买令牌。 | String gg.now.billingclient.api.Purchase.getPurchaseToken() |
| String | getSignature() – 返回包含了使用开发者私钥生成的购买签名的字符串。 | String gg.now.billingclient.api.Purchase.getSignature() |
| String | getSku() – 返回产品ID(Product ID)。 | String gg.now.billingclient.api.Purchase.getSku() |
| int | hashCode() | int gg.now.billingclient.api.Purchase.hashCode() |
| boolean | isAutoRenewing() – 返回购买是否是自动续订。 | boolean gg.now.billingclient.api.Purchase.isAutoRenewing() |
| String | getSubscriptionPeriod() – 返回订阅周期,使用 ISO 8601 格式。 | String gg.now.billingclient.api.Purchase.getSubscriptionPeriod() |
| long | getExpiryTimeMillis() – 返回订阅过期时间(以毫秒为单位)。 | long gg.now.billingclient.api.Purchase.getExpiryTimeMillis() |
| long | getSubscriptionPurchaseDateMillis() – 返回订阅的购买日期。 | long gg.now.billingclient.api.Purchase.getSubscriptionPurchaseDateMillis() |
| String | getSubscriptionStatus() – 返回订阅状态 – 定义于此处。 | String gg.now.billingclient.api.Purchase.getSubscriptionStatus() |
| boolean | isAcknowledged() – 返回购买是否已被确认。 | boolean gg.now.billingclient.api.Purchase.isAcknowledged() |
| String | toString() | String gg.now.billingclient.api.Purchase.toString() |
| String | getDeveloperPayload() – 由开发者指定的字符串,包含了订单的补充信息。 | String gg.now.billingclient.api.Purchase.getDeveloperPayload() |
getOriginalJson() 的预期响应。
{
"productId": "coin_2000",
"purchaseTime": 1770103123400,
"developerPayload": "<developerPayload here>",
"purchaseToken": "<purchaseToken here>.",
"orderId": "1-2026020111116395992244",
"packageName": "gg.now.sample.app",
"subscriptionStatus": "CANCELLED",
"subscriptionPeriod": "P1W",
"expiryTimeMillis": 1755505803000,
"subscriptionPurchaseDateMillis": 1754901003000,
"isAcknowledged": false,
"autoRenewing": true
}
以下是与 getOriginalJson() 相关的响应参数。
| 参数 | 类型 | 说明 |
|---|---|---|
productId |
string | 已购买商品或订阅的唯一标识符。 |
purchaseTime |
int | 完成购买的时间,以自 UTC 纪元以来的毫秒数表示。 |
developerPayload |
string | 与本次购买关联的、由开发者自定义的可选元数据。 |
purchaseToken |
string |
表示本次购买的令牌。此令牌必须发送到您的后端以进行购买校验。 注意:now.gg 购买令牌通常以 -nowgg- 开头。
|
orderId |
string | 与本次交易关联的唯一订单标识符。 |
packageName |
string | 发生购买行为的应用包名。 |
subscriptionStatus |
string |
订阅的当前状态。 仅适用于订阅。 示例: ACTIVE、CANCELLED、EXPIRED。
|
subscriptionPeriod |
string |
以 ISO-8601 格式表示的订阅周期。 仅适用于订阅。 示例: P1W(1 周)、P1M(1 个月)。
|
expiryTimeMillis |
int |
订阅到期时间,以自 UTC 纪元以来的毫秒数表示。 仅适用于订阅。 |
subscriptionPurchaseDateMillis |
int |
订阅最初购买的时间,以自 UTC 纪元以来的毫秒数表示。 仅适用于订阅。 |
isAcknowledged |
boolean |
指示订阅购买是否已被确认(acknowledged)。 仅适用于订阅。 |
autoRenewing |
boolean |
指示订阅是否已设置为自动续订。 仅适用于订阅。 |
| 可能的返回值 | 描述 |
|---|---|
| PENDING | 订单已创建但未支付。 |
| EXPIRED | 订阅续订失败。 |
| ACTIVE | 支付完成且订阅激活。 |
| DELETED | 开发者从nowStudio将订阅删除。 |
| CANCELLED | 用户取消订阅。 |