首页 文章

不支持的方法:BaseConfig.getApplicationIdSuffix()

提问于
浏览
226

所以我正在阅读Android 6 for Programmers:App-Driven Approach和前两个应用程序示例我对示例没有任何问题,这次是在加载到Android Studio 3.0 Canary-3中的FlagQuiz示例我让我构建了项目:

错误:不支持的方法:BaseConfig.getApplicationIdSuffix() . 您连接的Gradle版本不支持该方法 . 要解决此问题,您可以更改/升级您连接到的Gradle的目标版本 . 或者,您可以忽略此异常并从模型中读取其他信息 .

您可以从书籍网站here下载源代码,以使用我正在测试的相同代码库进行测试 .

8 回答

  • 16

    好吧,我想出了如何解决这个问题 .

    • 打开build.gradle并将gradle版本更改为推荐版本:
      classpath 'com.android.tools.build:gradle:1.3.0'
      classpath 'com.android.tools.build:gradle:2.3.2'

    • 点击 'Try Again'

    • 在消息框中它会说 'Fix Gradle Wrapper and re-import project' 点击它,因为最小的gradle版本是 3.3

    • 会弹出一个新错误并说 The SDK Build Tools revision (23.0.1) is too low for project ':app'. Minimum required is 25.0.0 - 点击 Update Build Tools version and sync project

    • 可能会弹出一个窗口,显示 Android Gradle Plugin Update recommended ,只是从那里更新 .

    现在,项目应该可以在任何Android虚拟设备上运行 .

  • 10

    对于Android Studio 3,我需要更新两个文件来修复错误: -

    1. app/build.gradle

    buildscript {
        repositories {
            jcenter()
            mavenCentral()
            maven {
                url 'https://maven.google.com/'
                name 'Google'
            }
        }
    
        dependencies {
            classpath 'com.android.tools.build:gradle:3.0.1'
        }
    }
    

    2. app/gradle/wrapper/gradle-wrapper.properties

    distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
    
  • 89

    首先,打开您的应用程序模块 build.gradle 文件 .

    根据您的项目依赖性检查 classpath . 如果不更改此类路径的版本 .

    from:

    classpath 'com.android.tools.build:gradle:1.0.0'
    

    To:

    classpath 'com.android.tools.build:gradle:2.3.2'
    

    或更高版本根据你的Android工作室的gradle .

    如果仍然有问题,那么改变 buildToolsVersion

    From:

    buildToolsVersion '21.0.0'
    

    To:

    buildToolsVersion '25.0.0'
    

    然后点击'再试一次',gradle会自动同步 . 这将解决它 .

  • 0

    就我而言,Android Studio 3.0.1,我通过以下两个步骤解决了这个问题 .

    第1步:在项目级build.gradle中更改Gradle插件版本

    buildscript {
        repositories {
            jcenter()
            mavenCentral()
            maven {
                url 'https://maven.google.com/'
                name 'Google'
            }
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:3.0.1'
        }
    }
    

    第2步:更改gradle版本

    distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
    
  • 612

    我也遇到了同样的问题并得到了一个非常相似的解决方案:

    • 将类路径更改为类路径'com.android.tools.build:gradle:2.3.2'

    Image after adding the classpath

    • 指示更新构建工具版本的新消息,因此只需单击该消息即可更新 . Update
  • 4

    更改您的gradle版本或更新它

    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'
    }
    

    alt输入并选择“替换为特定版本” .

  • 11

    您可以通过更改gradle文件来完成此操作 .

    build.gradle > change
        dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'
        }
        gradle-wrapper.properties > update
        distributionUrl=https://services.gradle.org/distributions/gradle-4.6-all.zip
    
  • 46

    如果这个()不支持的方法:BaseConfig.getApplicationIdSuffix Android项目已经过时并且您已经更新了Android Studio,我所做的只是 CLOSE PROJECT 并再次运行它 . 它为我解决了这个问题 . 没有添加任何依赖项或其他答案所描述的任何内容 .

相关问题