Flutter构建APK时flutter_pdfview库资源链接失败求助
问题解决:执行
:flutter_pdfview:verifyReleaseResources失败,提示android:attr/lStar not found 问题描述
使用flutter_cached_pdfview: 0.4.1包时,执行flutter build apk报错,错误信息如下:
A failure occurred while executing com.android.build.gradle.tasks.VerifyLibraryResourcesTask$Action Android resource linking failed ERROR:/Users/pawan/Documents/GitHub/flutter_project/build/flutter_pdfview/intermediates/merged_res/release/values/values.xml:132: AAPT: error: resource android:attr/lStar not found.
但执行flutter build appbundle或模拟器运行flutter run均正常,flutter doctor -v无异常,且已尝试flutter upgrade、flutter clean、flutter pub get仍未解决。
问题原因
android:attr/lStar是Android 12(API 31)新增的属性,你使用的flutter_pdfview版本(由flutter_cached_pdfview 0.4.1依赖)未适配API 31,导致APK打包时资源合并失败。App Bundle打包规则与APK不同,因此未触发该问题。
解决步骤
- 强制升级
flutter_pdfview版本
在项目的pubspec.yaml中添加依赖覆盖,指定兼容API 31的版本:
dependency_overrides: flutter_pdfview: ^1.2.1 # 可选择更高的稳定版本
执行命令更新依赖:
flutter pub get
- 调整Android项目SDK版本配置
打开android/app/build.gradle文件,确保compileSdkVersion和targetSdkVersion设置为31或更高:
android { compileSdkVersion 33 defaultConfig { targetSdkVersion 33 } }
同时检查android/build.gradle中的Gradle插件版本,确保与SDK版本兼容(例如使用7.x版本的插件):
dependencies { classpath 'com.android.tools.build:gradle:7.4.2' }
- 清理缓存并重新构建
执行以下命令彻底清理缓存后重新打包:
flutter clean flutter pub get flutter build apk
内容的提问来源于stack exchange,提问作者Pawan Joshi
相关产品推荐
相关产品推荐

