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

运行flutter build apk --release打包Android API 26版APK报错如何解决

报错根因

你遇到的两个AAPT资源找不到报错,核心原因是android:attr/fontVariationSettings和android:attr/ttcIndex是Android API 27才新增的系统属性,你当前将compileSdkVersion设置为26,编译阶段无法识别这两个高版本属性,就会触发构建失败。而你将compileSdkVersion设为29时能正常打包,就是因为29版本的Android SDK包含了这两个属性的定义。


解决方案

方案1(优先推荐):不调整适配逻辑仅修改编译配置

你只需要将compileSdkVersion升级到27及以上即可,targetSdkVersion可以保留26不变,不会影响你适配API 26的需求,minSdkVersion设为20也完全不受影响。compileSdkVersion仅作用于编译阶段,不会限制APK的最低运行版本。

方案2:必须强制compileSdkVersion=26的处理方式

如果你的项目有硬性要求必须用API 26编译,可以通过强制降级AndroidX核心库版本解决,操作步骤如下:

  • 打开项目安卓层的app/build.gradle文件,在dependencies代码块之前添加如下配置:
configurations.all {
    resolutionStrategy {
        force 'androidx.core:core:1.0.0'
    }
}
  • 清理项目缓存后重新打包:依次执行flutter clean、flutter pub get,再运行flutter build apk --release即可。

注意事项

如果项目中使用的第三方Flutter插件依赖了更高版本的AndroidX核心库,上述强制约束会覆盖插件的依赖声明,绝大多数场景下不会出现兼容问题,如果后续测试发现插件功能异常,再单独排查对应插件的版本依赖要求即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 04:12:02