我实现了应用内计费(订阅)并且一切正常 - 我能够订阅,我确认订阅,并且计费流程成功结束并处于正常状态。
但是,在我的应用程序启动时,我正在检查(从 Google Play 缓存)我是否已经购买 - 我总是得到 DEVELOPER_ERROR。
这是我的代码:
public void checkIfPurchased() {
billingClient.startConnection(new BillingClientStateListener() {
@Override
public void onBillingSetupFinished(BillingResult billingResult) {
if (billingResult.getResponseCode() == BillingClient.BillingResponseCode.OK) {
Purchase.PurchasesResult alreadyPurchasedResult = billingClient.queryPurchases(SKU_ID);
List<Purchase> alreadyPurchased = alreadyPurchasedResult.getPurchasesList();
...
// alreadyPurchasedResult = 5 = DEVELOPER_ERROR
}
}
}
为什么会这样?
最佳答案
queryPurchases
方法接受 BillingClient.SkuType.INAPP
或 BillingClient.SkuType.SUBS
作为参数,如 documentation 中所述.
在您的示例中,您似乎输入了订阅产品的 SKU ID。
关于android - 在应用计费 v3 中 - 为什么我在调用 queryPurchases(skuID) 时收到 DEVELOPER_ERROR?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65790075/