Expo React Native项目配置蓝牙热敏打印打包遇android:attr/lStar缺失错误
解决React Native打包时
android:attr/lStar not found错误 针对使用januslo/react-native-bluetooth-escpos-printer库执行gradlew assemblerelease时出现的资源链接错误,可按以下步骤修复:
升级项目SDK版本
打开项目根目录下的android/build.gradle,修改buildscript中的ext配置,将compileSdkVersion和targetSdkVersion升级到33(或更高稳定版本):ext { compileSdkVersion = 33 targetSdkVersion = 33 // 保留其他原有版本配置 }强制统一AndroidX AppCompat依赖版本
在android/build.gradle的allprojects块内添加subprojects配置,确保所有子模块使用统一的AppCompat版本:allprojects { repositories { // 原有仓库配置 } subprojects { afterEvaluate { project -> if (project.hasProperty('android')) { android { compileSdkVersion rootProject.ext.compileSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion } configurations.all { resolutionStrategy { force 'androidx.appcompat:appcompat:1.6.1' } } } } } }清理缓存并重新打包
执行以下命令清理构建缓存后重新打包:cd android ./gradlew clean ./gradlew assemblerelease
错误原因
android:attr/lStar是Android 12(API 31)新增的属性,若项目compileSdkVersion低于31,或依赖库使用的AndroidX版本未适配该属性,就会触发此资源链接错误。通过升级SDK版本并强制统一依赖版本,可解决版本冲突问题。
内容的提问来源于stack exchange,提问作者Bineesh Kumar
相关产品推荐
相关产品推荐

