使用flutter build apk构建Release APK失败,报错android:attr/lStar未找到
解决Flutter构建Release APK时
android:attr/lStar not found错误 问题原因
android:attr/lStar是Android 12(API 31)新增的资源属性,当项目或依赖库的compileSdkVersion低于31时,构建工具无法识别该属性,从而触发资源链接失败。
解决方案
1. 升级项目的Android编译版本
打开Flutter项目下的android/app/build.gradle文件,修改以下配置:
android { compileSdkVersion 31 // 可升级至33、34等更高稳定版本 defaultConfig { targetSdkVersion 31 // 建议与compileSdkVersion保持一致或接近 } }
2. 强制所有依赖库统一使用项目编译版本
若升级项目版本后仍报错,可在android/build.gradle中添加配置,强制所有依赖库对齐项目的编译版本:
subprojects { afterEvaluate { project -> if (project.hasProperty("android")) { android { compileSdkVersion rootProject.ext.compileSdkVersion buildToolsVersion rootProject.ext.buildToolsVersion } } } }
同时在该文件的buildscript块中定义版本变量:
buildscript { ext { compileSdkVersion = 31 buildToolsVersion = "31.0.0" // 对应compileSdkVersion的配套版本 } // 其他原有配置... }
3. 更新uni_links2依赖到最新版本
打开pubspec.yaml文件,将uni_links2的版本替换为最新稳定版:
dependencies: uni_links2: ^最新版本号
执行flutter pub get完成依赖更新,新版本库通常已适配更高Android API版本。
4. 清理缓存后重新构建
执行以下命令清理构建缓存,再尝试构建Release APK:
flutter clean flutter build apk --release
内容的提问来源于stack exchange,提问作者Deepiga Dharshini
相关产品推荐
相关产品推荐

