You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

修改Target SDK版本后Flutter项目构建失败,恢复后仍报错求助

问题描述

尝试将Flutter项目的Target SDK从33升级到34后,应用无法正常构建;即使改回33版本,仍出现以下构建错误:

FAILURE: Build failed with an exception.

  • Where:
    Build file 'C:\Users\dicov\Downloads\Flutter-Dating-App-master\android\build.gradle' line: 28

  • What went wrong:
    A problem occurred evaluating root project 'android'.
    A problem occurred configuring project ':app'.
    Failed to notify project evaluation listener.

'com.android.build.api.variant.SourceDirectories$Flat com.android.build.api.variant.Sources.getByName(java.lang.String)'

相关配置文件见下文,且Android SDK升级助手无法完成SDK 33到34的组件验证,按提示操作后问题仍存在。


解决方案

这个错误本质是Android Gradle插件(AGP)、Kotlin版本、Flutter Gradle插件三者版本不兼容,加上配置文件中的错误导致的,按以下步骤修复:

1. 统一Kotlin版本,匹配AGP版本

项目级build.gradle中存在Kotlin版本不一致的问题:ext.kotlin_version设为2.0.0,但kotlin-gradle-plugin用的是1.9.0,且AGP 7.4.2不兼容Kotlin 2.0.0。修改如下:

buildscript {
    // 统一Kotlin版本为1.9.0,和插件版本一致,适配AGP 7.4.2
    ext.kotlin_version = '1.9.0'
    repositories {
        google()
        mavenCentral()
    }

    dependencies {
        // 升级到AGP 7.4.4稳定版,更好兼容SDK 34
        classpath 'com.android.tools.build:gradle:7.4.4'
        classpath 'com.google.gms:google-services:4.4.2'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    }
}

2. 修复AndroidManifest.xml中的服务配置错误

你的AndroidManifest.xml里的服务名称包含空格,属于无效配置,会导致构建异常:

<!-- 错误配置 -->
<service
    android:name="Smash or pass"
    android:foregroundServiceType="specialUse">

修改为合法的服务类全路径,比如:

<!-- 修正后,替换为你的实际服务类名 -->
<service
    android:name=".MyForegroundService"
    android:foregroundServiceType="specialUse">

3. 同步依赖并清理缓存

  • 执行命令:flutter clean 清理Flutter缓存
  • 删除android/.gradle文件夹,清除本地Gradle缓存
  • 在Android Studio中点击File > Sync Project with Gradle Files
  • 重新运行项目

4. 适配SDK 34(可选,若要升级到targetSdk 34)

如果最终要升级到targetSdk 34,补充以下操作:

  • 在app/build.gradle中把targetSdkVersion设为34
  • 确保安装Android SDK 34的全部组件(SDK Platform、Build Tools 34.0.0等)
  • 升级Firebase BOM版本到兼容SDK 34的版本:
    implementation platform('com.google.firebase:firebase-bom:32.7.1')
    

内容的提问来源于stack exchange,提问作者Android_devNL

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 10:12:06