java - 如何使用最新版本的计费客户端正确导入 BillingResponse (billing:2.0.1)
问题描述
我正在将我的 android billing api 版本从 1.2.2 升级到 2.0.1。但是现在我导入的 '''BillingResponse''' api 正在返回一个错误。如何正确导入版本 2.0.1 的 BillingResponse?
我在 Android Studio 中使用 gradle。
我尝试过: - 清理并重建我的项目 - 关闭应用程序并重新打开 - 重新启动我的机器 - 文件 > 将项目与 gradle 文件同步
到目前为止,这些都不适用于 2.0.1,但是当我回到 1.2.2 版本的 android 计费 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'
我在实现 PurchasesUpdatedListener 的 BillingProvider.java 中的导入语句:
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
计费结果返回值
以前返回 BillingResponse 整数值的 API 现在返回 BillingResult 对象。BillingResult 包含 BillingResponse 整数以及可用于诊断错误的调试字符串。调试字符串使用 en-US 语言环境,并不打算向最终用户显示。