如何使用最新版本的计费客户端 (billing:2.0.1) 正确导入 BillingResponse

How to correctly import BillingResponse with newest version of billing client (billing:2.0.1)

我正在将我的 android 计费 api 版本从 1.2.2 升级到 2.0.1。 但是现在我导入的 '''BillingResponse''' api 返回错误。如何正确导入版本 2.0.1 的 BillingResponse?

我正在 Android Studio 中使用 gradle。

我试过: - 清理和重建我的项目 - 关闭应用程序并重新打开 - 重新启动我的机器 - 文件 > 与 gradle 个文件

同步项目

None 到目前为止使用 2.0.1,但是当我回到 1.2.2 版本的 android billing API 它再次工作!我找不到任何表明 BillingResponse 已被弃用的文档,所以我希望它即使在更新后的 api

下也能正常工作

我的相关 gradle 依赖项:

dependencies {
  implementation fileTree(dir: 'libs', include: ['*.jar'])
  implementation project(':libcocos2dx')
  implementation 'com.google.android.gms:play-services-games:17.0.0'
  implementation 'com.google.android.gms:play-services-auth:16.0.1'
  implementation 'com.android.billingclient:billing:2.0.1'

我在 BillingProvider.java 中的导入语句实现了 PurchasesUpdatedListener:

import com.android.billingclient.api.BillingClient;
import com.android.billingclient.api.BillingClient.BillingResponse;
import com.android.billingclient.api.BillingClient.FeatureType;
import com.android.billingclient.api.BillingClient.SkuType;

^ 请注意,除了 .BillingResponse 以外,所有其他导入都在这里工作!

我希望 BillingResponse 在 2.0.1 中仍然可用,但现在我已经升级了,它似乎找不到了...

勾选https://developer.android.com/google/play/billing/billing_library_releases_notes

BillingResult return values

APIs that previously returned a BillingResponse integer value now return a BillingResult object. BillingResult contains the BillingResponse integer as well as a debug string that you can use to diagnose errors. The debug string uses an en-US locale and is not meant to be shown to end users.

而不是导入 import com.android.billingclient.api.BillingClient.BillingResponse; 我改用了 BillingClient.BillingResponseCode.OK 对象,它起作用了