Android构建报错:AAPT error: resource android:attr/lStar not found求助
问题根因
android:attr/lStar是Android 12(API级别31)才新增的系统属性,你的项目当前compileSdkVersion设置为29,无法识别该属性。报错信息指向core-1.7.0-alpha02版本的资源文件,说明你的项目依赖被解析到了适配Android 12的core库版本,该版本引用了lStar属性触发编译错误。
之前相同配置可以正常构建,是因为此前Gradle依赖解析未拉取到1.7.0及以上版本的core库,近期依赖更新触发了新版本拉取才出现问题。
解决方案
按以下步骤操作即可解决:
- 步骤1:降级不稳定的appcompat依赖
你当前使用的1.4.0-alpha03属于alpha测试版,会自动依赖高版本core库,将dependencies中的对应配置替换为稳定版:
// 替换前的代码 // implementation 'androidx.appcompat:appcompat:1.4.0-alpha03' // implementation "androidx.appcompat:appcompat-resources:1.4.0-alpha03" // 替换后的代码 implementation 'androidx.appcompat:appcompat:1.3.1' implementation "androidx.appcompat:appcompat-resources:1.3.1"
- 步骤2:强制锁定core库版本避免自动升级
在build.gradle文件的android节点外添加如下配置,强制所有依赖使用1.6.0版本的core系列库:
configurations.all { resolutionStrategy { force 'androidx.core:core-ktx:1.6.0' force 'androidx.core:core:1.6.0' } }
- 步骤3:修复support包与AndroidX混用问题
你项目中同时引入了AndroidX和旧版support包依赖,可能触发未知兼容问题,将以下旧依赖替换为AndroidX版本:
// 替换com.android.support:customtabs:29.0.0 implementation 'androidx.browser:browser:1.3.0' // 替换com.android.support:support-annotations:28.0.0 implementation 'androidx.annotation:annotation:1.2.0'
- 步骤4:清理缓存重建项目
操作路径:Android Studio菜单选择File -> Invalidate Caches / Restart,重启后执行命令./gradlew clean build重新构建项目即可。
内容的提问来源于stack exchange,提问作者Nanda Z
相关产品推荐
相关产品推荐

