BillingClient 和 PurchasesUpdateListener 类不可用

Posted

技术标签:

【中文标题】BillingClient 和 PurchasesUpdateListener 类不可用【英文标题】:BillingClient and PurchasesUpdateListener classes not available 【发布时间】:2021-02-07 03:02:54 【问题描述】:

我正在尝试添加应用内结算,如下所述: https://developer.android.com/google/play/billing/integrate 并认为我已按照说明设置了依赖项,但是页面上的代码示例中的 BillingClient 和 PurchasesUpdateListener 类仍然不可用。

我项目的 build.gradle:

apply plugin: 'com.android.application'

android 
    compileSdkVersion 28
    buildToolsVersion '29.0.2'

    defaultConfig 
        applicationId "com.myproject"
        minSdkVersion 17
        targetSdkVersion 26
    

    buildTypes 
        release 
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        
    

android 
    useLibrary 'org.apache.http.legacy'

dependencies    
    implementation 'com.google.android.gms:play-services-ads:19.5.0'
    implementation 'com.android.billingclient:billing:3.0.1'

我的*** build.gradle:

buildscript 
    repositories 
        jcenter()
        google()
    
    dependencies 
        classpath 'com.android.tools.build:gradle:4.1.0'
    


allprojects 
    repositories 
        jcenter()
        google()
    

如何解决这个问题?

【问题讨论】:

你的课在哪里? android studio 是否显示错误?如果在使缓存无效并重新启动工作室后清理并重建 在 Android Studio 中,当我写“import com.android.billingclient.api.PurchasesUpdatedListener;”时,“billingclient”标记为红色。不管我之前是“清理项目”还是重新启动 Android Studio……很奇怪。 【参考方案1】:

如下更改我的全局 build.gradle 帮助我解决了缺少的依赖项:

buildscript 
    repositories 
        jcenter()
        google()

    mavenLocal()
    mavenCentral()
    maven  url "http://oss.sonatype.org/content/repositories/snapshots/" 
    maven  url "http://oss.sonatype.org/content/repositories/releases/" 
    maven  url "https://maven.springframework.org/release" 
    maven  url "https://maven.restlet.com" 
    maven  url "https://jcenter.bintray.com" 
    jcenter()
    
    dependencies 
        classpath 'com.android.tools.build:gradle:4.1.0'


    


allprojects 
    repositories 
        jcenter()
        google()
    

希望这对某人有所帮助。

【讨论】:

【参考方案2】:

确保全局 build.gradle 使用的是最新版本。 然后重新同步将解决所有问题。

【讨论】:

以上是关于BillingClient 和 PurchasesUpdateListener 类不可用的主要内容,如果未能解决你的问题,请参考以下文章

是否可以通过 BillingClient 检测宽限期?

BillingClient.BillingClientStateListener.onBillingSetupFinished 被多次调用

退款客户应用内购买,但 BillingClient 仍然显示用户已购买?

整个应用程序中BillingClient的一个实例

为啥 Android BillingClient v2 慢速信用卡测试永远不会取消?

是否可以从 Xamarin Android 应用程序直接使用 Google Play BillingClient?