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

React Native打包Android报AAPT: error: resource android:attr/lStar not found

报错根因

android:attr/lStar是Android 12(API等级31)才新增的系统属性,报错是因为你的项目依赖了androidx.core:core*:1.7.0及以上版本的库,该版本库依赖API31的编译环境,而你项目当前的compileSdkVersion低于31导致资源链接失败。
即使你没有在项目中显式声明androidx.core:core-ktx:+依赖,也可能是项目引入的第三方RN组件使用了动态版本号的core依赖,自动拉取了最新的高版本core库导致的问题。

排查步骤
  1. 进入项目的android目录,执行依赖查询命令:
    • Mac/Linux系统:./gradlew :app:dependencies
    • Windows系统:gradlew.bat :app:dependencies
  2. 在输出的依赖树中搜索core-ktx或者androidx.core:core,即可定位到是哪个第三方依赖引入了1.7.0及以上版本的core库。
解决方案

方案一(根治推荐):升级编译SDK版本

修改项目android/build.gradle文件中的配置:

buildscript {
    ext {
        compileSdkVersion = 31 // 至少升到31,推荐用最新稳定版
        targetSdkVersion = 31 // 和compileSdkVersion保持一致
        buildToolsVersion = "31.0.0" // 对应版本的构建工具
    }
}

修改完成后重新构建项目即可,该方案可以避免后续其他新依赖同样出现版本兼容问题。

方案二(临时规避):全局强制锁定core库版本

如果暂时无法升级编译SDK版本,可以在android/build.gradle中添加强制版本配置,锁定core库到支持低版本编译SDK的1.6.0版本:

allprojects {
    configurations.all {
        resolutionStrategy {
            // 强制所有依赖使用指定版本的core库
            force 'androidx.core:core-ktx:1.6.0'
            force 'androidx.core:core:1.6.0'
        }
    }
}

配置完成后执行./gradlew clean清理构建缓存,再重新打包即可。

方案三:升级问题第三方依赖

如果排查到是某个特定RN组件导致的依赖问题,可以直接将该组件升级到已修复该版本兼容问题的版本,无需修改全局配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 00:15:01