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

Flutter Release构建失败:sign_in_with_apple资源验证报错android:attr/lStar缺失

解决方案:Flutter Release构建报错android:attr/lStar not found(未引入sign_in_with_apple)

问题原因

虽然你未直接在pubspec.yaml中引入sign_in_with_apple,但项目中某个依赖间接引入了该库的旧版本。android:attr/lStar是Android 12(API Level 31)新增的属性,旧版本的sign_in_with_apple会引用该属性,而你的Android项目编译SDK版本低于31,导致Release构建时资源链接失败(Debug模式下Gradle会做兼容处理,因此不会报错)。

解决步骤

1. 定位间接依赖来源

执行以下命令查看完整依赖树,找到引入sign_in_with_apple的父依赖:

flutter pub deps

2. 处理冲突依赖

  • 优先升级父依赖到最新版本:多数情况下,父依赖的新版本会同步更新间接依赖的sign_in_with_apple,解决版本兼容问题。
  • 强制指定兼容版本:若无法升级父依赖,可在pubspec.yaml中直接声明sign_in_with_apple的稳定兼容版:
    dependencies:
      # 你的其他依赖...
      sign_in_with_apple: ^5.0.0  # 选择适配你项目SDK版本的最新稳定版
    
  • 依赖覆盖排除旧版本:如果上述方法无效,通过依赖覆盖强制替换旧版本:
    dependency_overrides:
      sign_in_with_apple: ^5.0.0
    

3. 升级Android项目SDK版本

修改android/app/build.gradle文件,将compileSdkVersion和targetSdkVersion提升到31或更高(推荐33):

android {
    compileSdkVersion 33

    defaultConfig {
        applicationId "com.your.app.id"
        minSdkVersion 21  # 根据你的项目需求调整
        targetSdkVersion 33
        // ...其他配置项
    }
}

4. 清理缓存并重新构建

执行以下命令清理构建缓存,再重新打包:

flutter clean
flutter build apk --release

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 11:19:53