[Flutter] v3.24 AAPT:错误:未找到资源 android:attr/lStar。

推荐超级课程:

  • 本地离线DeepSeek AI方案部署实战教程【完全版】
  • Docker快速入门到精通
  • Kubernetes入门到大师通关课
  • AWS云服务快速入门实战

前提

将 Flutter 升级到 3.24.4 后,构建在我的本地电脑上通过,但Github actions 构建时失败。

Flutter 构建环境

No user-defined environment variables were set== Use Xcode 16.2 ==
> sudo xcode-select --switch /Applications/Xcode-16.2.app/Contents/Developer
Xcode 16.2
Build version 16C5013f== Use CocoaPods version 1.16.2 ==
> gem uninstall cocoapods --executables --all
Removing pod
Removing sandbox-pod
Successfully uninstalled cocoapods-1.15.2> gem install cocoapods --version 1.16.2
Successfully installed cocoapods-core-1.16.2
Successfully installed cocoapods-1.16.2
Parsing documentation for cocoapods-core-1.16.2
Installing ri documentation for cocoapods-core-1.16.2
Parsing documentation for cocoapods-1.16.2
Installing ri documentation for cocoapods-1.16.2
Done installing documentation for cocoapods-core, cocoapods after 1 seconds
2 gems installed> gem list '^cocoapods$' --no-verbose
cocoapods (1.16.2)== Use Java version 17 ==
> java -version
openjdk version "17.0.13" 2024-10-15 LTS
OpenJDK Runtime Environment Zulu17.54+21-CA (build 17.0.13+11-LTS)
OpenJDK 64-Bit Server VM Zulu17.54+21-CA (build 17.0.13+11-LTS, mixed mode, sharing)== Codemagic CLI tools ==
> codemagic-cli-tools version
codemagic-cli-tools 0.54.3== Use Flutter version 3.24.4 ==
Flutter 3.24.4 • Dart 3.5.4

发生的错误

* What went wrong:
Execution failed for task ':uni_links:verifyReleaseResources'.
> A failure occurred while executing com.android.build.gradle.tasks.VerifyLibraryResourcesTask$Action> Android resource linking failedERROR:/Users/builder/clone/app/build/uni_links/intermediates/merged_res/release/values/values.xml:194: AAPT: error: resource android:attr/lStar not found.

解决方案

1.更新目标包

某些软件包会出现此问题,可以通过升级软件包版本来解决。

2. 当难以替代时

在调查错误时,我发现另一个包存在问题。

https://github.com/livekit/client-sdk-flutter/issues/569#issuecomment-2275686786

我的修复方法:

compileSdkVersion将 Flutter 更新到 3.24 后,这个问题再次出现。这与 Flutter 现在检查和的版本有关buildToolsVersion。有些软件包要么指定了过时的版本,要么根本没有指定。

解决方案是,您需要将软件包更新到新版本。此外,如果您的软件包仍未指定这些参数,则可以在 build.gradle 的子项目指令之间添加一个脚本。该脚本如下所示:

将这些添加到android/build.gradle中。只需在两个现有块之间android/app/build.gradle添加中间块即可。

修复 app/build.gradle 子项目中 afterEvaluate 中的 SDK

subprojects {afterEvaluate { project ->if (project.plugins.hasPlugin("com.android.application") ||project.plugins.hasPlugin("com.android.library")) {project.android {compileSdkVersion 34buildToolsVersion "34.0.0"}}}
}

当我设置了它之后,构建就通过了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/94972.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/94972.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

go语言标准库学习, fmt标准输出,Time 时间,Flag,Log日志,Strconv

向外输出 fmt包实现了类似C语言printf和scanf的格式化I/O。主要分为向外输出内容和获取输入内容两大部分。 内置输出 不需要引入标准库,方便 package mainfunc main() {print("我是控制台打印,我不换行 可以自己控制换行 \n我是另一行")prin…

ElementUI之表格

文章目录使用ElementUI使用在线引入的方式表格1. 带状态表格row-class-name"Function({row, rowIndex})/String"2. 固定表头(height"string/number"属性)2.1 属性的取值2.2 动态响应式高度使用演示2.3 ​​自定义滚动条样式​​2.4 表头高度定制获取一行信…

K8S 的 Master组件

K8S 的 Master 组件有哪些?每个组件的作用? K8s 大脑的 4 大核心模块,掌控全局! Kubernetes 集群的 Master(主节点) 就像一座 指挥中心,负责整个集群的调度、管理和控制。它由 4 大核心组件组成…

如何 让ubuntu 在root 下安装的docker 在 普通用户下也能用

在 Ubuntu 系统中,如果 Docker 是以 root 用户安装的,普通用户默认无法直接使用 Docker 命令(会报权限错误)。要让普通用户也能使用 Docker,可以按照以下步骤操作:方法 1:将用户加入 docker 用户…

模板方法模式:优雅封装算法骨架

目录 一、模板方法模式 1、结构 2、特性 3、优缺点 3.1、优点 3.2、缺点 4、使用场景 5、实现示例 5.1、抽象类 5.2、实现类 5.3、测试类 一、模板方法模式 模板方法模式(Template Method Pattern)是一种行为设计模式,它在一个方…

韦东山STM32_HAl库入门教程(SPI)学习笔记[09]内容

(1)SPI程序层次一、核心逻辑:“SPI Flash 操作” 是怎么跑起来的?要读写 SPI Flash,需同时理解 硬件连接(怎么接线) 和 软件分层(谁负责发指令、谁负责控制逻辑)&#xf…

线上Linux服务器的优化设置、系统安全与网络安全策略

一、Linux服务器的优化设置 线上Linux的优化配置序号基础优化配置内容说明1最小化安装系统【仅安装需要的,按需安装、不用不装】,必须安装的有基本开发环境、基本网络包、基本应用包。2ssh登录策略优化 Linux服务器上的ssh服务端配置文件是【/et…

基于人眼视觉特性的相关图像增强基础知识介绍

目录 1. 传统的灰度级动态范围优化配置方法 2.基于视觉特性的灰度级动态范围调整优化 1. 传统的灰度级动态范围优化配置方法 传统的灰度级动态范围调整方法主要包括线性动态范围调整及非线性动态 范围调整。线性动态范围调整是最简单的灰度级动态范围调整方法,观察…

Selenium使用超全指南

🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快概述selenium是网页应用中最流行的自动化测试工具,可以用来做自动化测试或者浏览器爬虫等。官网地址为:相对于另外一款web自动化测试工具QT…

Go通道操作全解析:从基础到高并发模式

一、channel类型 Go 语言中的通道(channel)是一种特殊的类型。它类似于传送带或队列,遵循先进先出(FIFO)原则,确保数据收发顺序的一致性。每个通道都是特定类型的导管,因此在声明时必须指定其元素类型。 channel是一种类型, 一种引用类型。 声明通道类型的格式如下:…

Linux网络--1、网络基础

目录 一、网络发展 二、理解分层 2.1OSI七层模型 2.2TCP/IP分层模型 2.3分层的好处 三、认识协议 3.1初步认识 3.2了解指定组织 3.3具体协议理解 3.3.1是什么 3.3.2为什么 3.3.3与OS的关系 3.4总结 四、网络传输流程 4.1局域网网络传输 4.1.1通信过程 4.1.2概念解析 4.2跨网…

前端视角下关于 WebSocket 的简单理解

参考 RFC 6455: The WebSocket Protocol WebSocket 协议基础 协议本质:在单个 TCP 连接上提供全双工通信通道的协议核心优势: 双向实时通信(服务器主动推送)低延迟(相比 HTTP 轮询)高效数据传输&#xff0…

自动化一键部署 LNMP 环境

第一步:准备环境 & 准备脚本文件1. 你在 CentOS 7 的服务器/虚拟机里打开终端,确认你有 root 权限或者能用 sudo。输入下面命令确认你的系统版本:cat /etc/centos-release你应该看到类似:CentOS Linux release 7.9.2009 (Core…

react之React.cloneElement()

react提供的这个方法克隆组件的方法,可能我们在平常的开发中用的很少,主要可能是我们并不知道或者并不了解这个方法。因为我在之前react的children文章中用到过,所以我就进行了一系列的测试,发现真的非常的好用。我们同样使用一些…

学习Java的Day27

今天学习的主要内容是在IntelliJ IDEA开发环境中,通过部署Tomcat服务器并连接MySQL数据库,实现了一个完整的留言板系统。这个项目涵盖了前后端开发的全流程,具体包括以下关键环节:开发环境搭建使用IntelliJ IDEA Ultimate版&#…

【计算机网络 | 第3篇】物理媒介

文章目录物理媒介介绍与物理媒体的分类🥝成本考量引导型传输媒体🍋引导型传输媒体:双绞线🍋‍🟩双绞线类别双绞线的发展历程双绞线的物理限制引导型传输媒体:同轴电缆🍋‍🟩结构组成…

golang的切片

切片 为什么需要切片 用于元素的个数不确定,所以无法通过数组的形式来进行统计。此时就需要切片 切片,也因此可以粗略地理解为动态数组数组的长度不能用变量来确定,这时候切片slice也就派上用场了 切片地基本介绍 切片的英文是slice切片是数组…

在labview中实现视频播放

这里分享一个迅雷的视频播放控件APlayer,非常的好用。具体操作步骤如下: 1.下载控件: 首先下载http://aplayer.open.xunlei.com/codecs.zip,将codecs文件解压后打开,按快捷键contrlA,随后contrlc复制里面所有的文件;…

ubuntu 22.04 使用yaml文件 修改静态ip

前提: 启动服务 sudo systemctl start systemd-networkd 设置开机自启 sudo systemctl enable systemd-networkd 检查状态(确保显示 active (running)) sudo systemctl status systemd-networkd 若想停止: 停止当前运行的服务 sud…

闸机控制系统从设计到实现全解析:第 4 篇:Redis 缓存与分布式锁实现

第 4 篇:Redis 缓存与分布式锁实现 一、Redis 在系统中的核心作用票证信息缓存:将高频访问的票证数据(如状态、有效期)缓存至 Redis,减少数据库查询,提升验证响应速度。分布式锁:在高并发场景下…