
问题描述
FAILURE: Build failed with an exception.
- What went wrong: Execution failed for task ':app:processDebugResources'.
A failure occurred while executing com.android.build.gradle.internal.res.LinkApplicationAndroidResourcesTask$TaskAction Android resource linking failed aapt2.exe E 04-11 13:44:20 25968 17680 LoadedArsc.cpp:94] RES_TABLE_TYPE_TYPE entry offsets overlap actual entry data. aapt2.exe E 04-11 13:44:20 25968 17680 ApkAssets.cpp:149] Failed to load resources table in APK 'D:\Android\Sdk\platforms\android-35\android.jar'. error: failed to load include path D:\Android\Sdk\platforms\android-35\android.jar.
- Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
- Get more help at https://help.gradle.org
BUILD FAILED in 14s
┌─ Flutter Fix ────────────────────────────────────────────────────────────────────────────────────┐ │ [!] Using compileSdk 35 requires Android Gradle Plugin (AGP) 8.1.0 or higher. │ │ Please upgrade to a newer AGP version. The version of AGP that your project uses is likely │ │ defined in: │ │ D:\WORK\workingSource\fangfangtong66\android\settings.gradle, │ │ in the 'plugins' closure (by the number following "com.android.application"). │ │ Alternatively, if your project was created with an older version of the templates, it is likely │ │ in the buildscript.dependencies closure of the top-level build.gradle: │ │ D:\WORK\workingSource\fangfangtong66\android\build.gradle, │ │ as the number following "com.android.tools.build:gradle:". │ │ │ │ Finally, if you have a strong reason to avoid upgrading AGP, you can temporarily lower the │ │ compileSdk version in the following file: │ │ D:\WORK\workingSource\fangfangtong66\android\app\build.gradle │ └──────────────────────────────────────────────────────────────────────────────────────────────────┘ Error: Gradle task assembleDebug failed with exit code 1
问题分析
根据错误信息和提示,问题的核心是 compileSdkVersion 35 需要 Android Gradle Plugin (AGP) 版本为 8.1.0 或更高,而当前项目使用的 AGP 版本较低,导致 aapt2 无法正确处理资源文件。以下是详细的解决步骤:
1. 检查并升级 Android Gradle Plugin (AGP)
问题原因:
- 当前项目使用了 compileSdkVersion 35,但 AGP 版本低于 8.1.0,导致不兼容。
解决步骤:
- 
修改 android/build.gradle文件:- 打开 D:\WORK\workingSource\fangfangtong66\android\build.gradle。
- 将 classpath更新到最新版本(如 8.1.0 或更高):buildscript { dependencies { classpath 'com.android.tools.build:gradle:8.1.0' // 确保版本 >= 8.1.0 } }
 
- 打开 
- 
更新 Gradle Wrapper 版本: - 打开 android/gradle/wrapper/gradle-wrapper.properties文件,确保使用支持 AGP 8.1.0 的 Gradle 版本:distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip
 
- 打开 
- 
清理并重新构建项目: - 运行以下命令:flutter clean flutter pub get flutter build apk
 
- 运行以下命令:
2. 回退 compileSdkVersion 和 targetSdkVersion
如果暂时无法升级 AGP,可以选择回退 compileSdkVersion 和 targetSdkVersion 到较低版本(如 33)。
解决步骤:
- 
修改 android/app/build.gradle文件:- 打开 D:\WORK\workingSource\fangfangtong66\android\app\build.gradle。
- 修改以下内容:android { compileSdkVersion 33 // 回退到较低版本 defaultConfig { targetSdkVersion 33 // 同样回退到较低版本 } }
 
- 打开 
- 
清理并重新构建项目: - 运行以下命令:flutter clean flutter pub get flutter build apk
 
- 运行以下命令:
3. 检查 Flutter 和 Android SDK 配置
操作步骤:
- 
**运行 flutter doctor**:- 确保所有依赖项都已正确安装,尤其是 Android 工具链。
- 如果有未解决的警告或错误,请按照提示修复。
 
- 
检查 Android SDK Build Tools: - 在 Android Studio 的 SDK Manager 中,确保安装了对应版本的 Build Tools(如 33.0.2 或 35.0.0)。
 
4. 替换 aapt2 工具
如果问题仍未解决,可能是 aapt2 工具本身存在问题。
解决步骤:
- 
**下载最新版本的 aapt2**:- 下载地址:Android SDK Build Tools。
- 替换路径:D:\Android\Sdk\build-tools\<version>\aapt2.exe。
 
- 
验证 aapt2是否正常工作:- 运行以下命令测试:aapt2 version
 
- 运行以下命令测试:
5. 使用 --stacktrace 和 --info 获取更多信息
操作步骤:
- 运行以下命令以获取更详细的错误日志:flutter build apk --stacktrace --info
- 根据日志中的具体错误定位问题。
总结
通过上述步骤逐一排查,问题应能得到解决。以下是优先级建议:
- 首选升级 AGP 和 Gradle(步骤 1),这是最推荐的解决方案。
- 次选回退 compileSdkVersion和targetSdkVersion(步骤 2),适用于无法升级的情况。
- 最后尝试替换工具链或清理缓存(步骤 3 和 4)。
如果问题仍然存在,请提供以下信息以便进一步分析:
- flutter doctor的输出结果。
- android/build.gradle和- android/app/build.gradle的完整内容。
- 使用 --stacktrace或--info获取的详细错误日志。
结束语 Flutter是一个由Google开发的开源UI工具包,它可以让您在不同平台上创建高质量、美观的应用程序,而无需编写大量平台特定的代码。我将学习和深入研究Flutter的方方面面。从基础知识到高级技巧,从UI设计到性能优化,欢饮关注一起讨论学习,共同进入Flutter的精彩世界!









