当前位置: 首页 > news >正文

Flutter 添加 iOS widget 小组件

在这里插入图片描述

环境
macOS 15.1
Xcode16.1
Flutter 3.27.4

前言

本篇文章主要记录,在Flutter 项目中如何正确地添加iOS 小组件,iOS 小组件 相关的知识在另一篇文章有记录。
iOS 14 widget

添加小组件 WidgetExtension

  1. 打开Xcode New -> Target
    在这里插入图片描述
  2. 选择 iOS -> 搜索 widget
    在这里插入图片描述
  3. 配置widget信息
    在这里插入图片描述

Include Live Activity:
Live Activity 是 iOS 16 引入的一项功能,允许应用在锁屏和动态岛(Dynamic Island)上显示实时更新的信息。通过选择这个选项,你可以在你的 Widget Extension 中包含 Live Activity 支持,从而在锁屏和动态岛上显示实时更新的内容。

Include Control:
Control 选项通常用于添加一些控制功能到你的 Widget 中,例如播放/暂停按钮、切换开关等。通过选择这个选项,你可以在你的 Widget Extension 中包含一些交互控件,允许用户直接在 Widget 中进行操作。

Include Configuration App Intent:
Configuration App Intent 选项允许你在 Widget 中包含一些配置选项,用户可以通过这些选项来配置 Widget 的显示内容或行为。通过选择这个选项,你可以在你的 Widget Extension 中包含一些配置意图,允许用户自定义 Widget 的设置。

  1. widgetExtension 添加完成
    在这里插入图片描述

解决报错

报错信息 :Cycle inside Runner; building could produce unreliable results. Cycle

Cycle inside Runner; building could produce unreliable results. Cycle details: → Target 'Runner' has copy command from '/Users/liyanhong/Library/Developer/Xcode/DerivedData/Runner-daekxgevfkqjvtfotuuepflquess/Build/Products/Debug-iphonesimulator/TikuWidgetExtension.appex' to '/Users/liyanhong/Library/Developer/Xcode/DerivedData/Runner-daekxgevfkqjvtfotuuepflquess/Build/Products/Debug-iphonesimulator/Runner.app/PlugIns/TikuWidgetExtension.appex' ○ That command depends on command in Target 'Runner': script phase “[CP] Copy Pods Resources” ○ That command depends on command in Target 'Runner': script phase “[CP] Embed Pods Frameworks” ○ That command depends on command in Target 'Runner': script phase “Thin Binary” ○ Target 'Runner' has process command with output '/Users/liyanhong/Library/Developer/Xcode/DerivedData/Runner-daekxgevfkqjvtfotuuepflquess/Build/Products/Debug-iphonesimulator/Runner.app/Info.plist' ○ Target 'Runner' has copy command from '/Users/liyanhong/Library/Developer/Xcode/DerivedData/Runner-daekxgevfkqjvtfotuuepflquess/Build/Products/Debug-iphonesimulator/TikuWidgetExtension.appex' to '/Users/liyanhong/Library/Developer/Xcode/DerivedData/Runner-daekxgevfkqjvtfotuuepflquess/Build/Products/Debug-iphonesimulator/Runner.app/PlugIns/TikuWidgetExtension.appex'

原因
这个错误信息表明在构建过程中存在循环依赖,导致构建过程不可靠。具体来说,Runner 目标在构建过程中试图复制 TikuWidgetExtension.appex,但这个过程依赖于其他脚本和命令,最终形成了一个循环。

解决
调整构建顺序:在 Xcode 中,选择 Runner 目标,然后转到 Build Phases 标签,拖动调整命令的顺序 如图。
在这里插入图片描述

总结

通过上面的步骤,我们就可以实现在Flutter 项目中添加 iOS widget 小组件啦!


感谢您的阅读和参与,HH思无邪愿与您一起在技术的道路上不断探索。如果您喜欢这篇文章,不妨留下您宝贵的赞!如果您对文章有任何疑问或建议,欢迎在评论区留言,我会第一时间处理,您的支持是我前行的动力,愿我们都能成为更好的自己!

相关文章:

Flutter 添加 iOS widget 小组件

环境 macOS 15.1 Xcode16.1 Flutter 3.27.4 前言 本篇文章主要记录,在Flutter 项目中如何正确地添加iOS 小组件,iOS 小组件 相关的知识在另一篇文章有记录。 iOS 14 widget 添加小组件 WidgetExtension 打开Xcode New -> Target 选择 iOS -> 搜…...

2025年金三银四经典自动化测试面试题

概述 觉得自动化测试很难? 是的,它确实不简单。但是学会它,工资高啊! 担心面试的时候被问到自动化测试? 嗯,你担心的没错!确实会被经常问到! 现在应聘软件测试工程师的岗位&…...

C++17 中 std::lcm:从入门到精通

文章目录 一、引言二、std::lcm 的基本概念三、入门示例四、计算多个整数的最小公倍数五、std::lcm 的实现原理六、在实际项目中的应用七、注意事项八、总结 一、引言 在 C 编程中,处理数学运算时,计算最小公倍数(Least Common Multiple&…...

初阶c语言(循环语句习题,完结)

前言: c语言为b站鹏哥,嗯对应视频37集 昨天做的c语言,今天在来做一遍,发现做错了 今天改了平均值的计算, 就是说最大值加上最小值,如果说这个数值非常大的话,两个值加上会超过int类型的最大…...

本地Deepseek-r1:7b模型集成到Google网页中对话

本地Deepseek-r1:7b网页对话 基于上一篇本地部署的Deepseek-r1:7b,使用黑窗口对话不方便,现在将本地模型通过插件集成到Google浏览器中 安装Google插件 在Chrome应用商店中搜索page assis 直接添加至Chrome 修改一下语言 RAG设置本地运行的模型&#…...

SSM课设-学生选课系统

【课设者】SSM课设-学生选课系统 分为 管理员 和 老师 和 学生端 技术栈 前端: HtmlCssJavaScriptAjax 后端: Spring、Spring MVC、MyBatis、MySQL、JSP 学生端 --选课 选课 搜索 --查看选课结果 --退选 --查看已修课程 --管理个人信息 老师端 --添加教学课程 添加 …...

Windows中使用Docker安装Anythingllm,基于deepseek构建自己的本地知识库问答大模型,可局域网内多用户访问、离线运行

文章目录 Windows中使用Docker安装Anythingllm,基于deepseek构建自己的知识库问答大模型1. 安装 Docker Desktop2. 使用Docker拉取Anythingllm镜像2. 设置 STORAGE_LOCATION 路径3. 创建存储目录和 .env 文件.env 文件的作用关键配置项 4. 运行 Docker 命令docker r…...

AI前端开发技能提升与ScriptEcho:拥抱AI时代的前端开发新范式

随着人工智能技术的飞速发展,AI前端开发岗位对技能的要求也水涨船高。越来越多的企业需要具备AI相关知识和高级前端开发能力的工程师,这使得传统的前端开发模式面临着巨大的挑战。如何提升开发效率,降低人力成本,成为了摆在所有前…...

【Redis存在线程安全问题吗?】

Redis存在线程安全问题吗? Redis的线程安全性概述Redis线程安全性的挑战Redis线程安全性的示例示例1:客户端并发访问导致的问题示例2:分布式环境下的问题解决Redis线程安全问题的建议总结Redis的线程安全性概述 Redis本身是一个单线程的键值存储数据库,它使用单线程模型来…...

碎碎念,再聊HyperRAM(CrosslinkNX FPGA+HyperRAM)

作者:Hello,Panda HyperRAM其实熊猫君很久以前在用了,几年前也分享了一篇实现HyperRAM控制器的博文(博文《Lattice CrossLinkNx LIFCL-40应用连载7-使用HyperRAM存储器》。近期在后台收到好几位朋友咨询一些关于HyperRAM的问题&a…...

左移架构 -- 从攒批,湖仓到使用数据流的实时数据产品

编辑导读: 这篇文章翻译自 Kai Waehner的 《The Shift Left Architecture – From Batch and Lakehouse to Real-Time Data Products with Data Streaming》。文章通过数据产品的概念引出了如何创建可重复使用的数据产品使企业能够从当前和未来的数据中获得价值。基于构建数据产…...

多模态识别和自然语言处理有什么区别

在科技飞速发展的当下,人工智能(AI)已经渗透到我们生活的方方面面。不知道大家有没有这样的经历:早上醒来,对着智能音箱说 “播放今天的新闻”,音箱不仅能识别你的语音,还能在播放新闻的同时&am…...

进阶——第十六蓝桥杯嵌入式熟练度练习(串口的小BUG补充-字符接受不完整和字符接受错误)

1.解决接受不完整问题 假如没接受完成,执行函数,就可能会把count直接清零,就会重新接受\ while (1){if(rx_count!0){uint8_t temprx_count;HAL_Delay(1);if(temprx_count)uart_proc(); }key_proc();rxclear_proc();/* USER CODE END WHILE…...

数据结构-链式二叉树

文章目录 一、链式二叉树1.1 链式二叉树的创建1.2 根、左子树、右子树1.3 二叉树的前中后序遍历1.3.1前(先)序遍历1.3.2中序遍历1.3.3后序遍历 1.4 二叉树的节点个数1.5 二叉树的叶子结点个数1.6 第K层节点个数1.7 二叉树的高度1.8 查找指定的值(val)1.9 二叉树的销毁 二、层序…...

【git-hub项目:YOLOs-CPP】本地实现01:项目构建

目录 写在前面 项目介绍 最新发布说明 Segmentation示例 功能特点 依赖项 安装 克隆代码仓库 配置 构建项目 写在前面 前面刚刚实现的系列文章: 【Windows/C++/yolo开发部署01】 【Windows/C++/yolo开发部署02】 【Windows/C++/yolo开发部署03】 【Windows/C++/yolo…...

250213-RHEL8.8-外接SSD固态硬盘

It seems that the exfat-utils package is still unavailable, even after enabling the RPM Fusion repository. This could happen if the repository metadata hasn’t been updated or if the package isn’t directly available in the RPM Fusion repository for RHEL 8…...

如何本地部署DeepSeek?

DeepSeek:智能时代的得力助手 在人工智能技术飞速发展的今天,DeepSeek 作为一款由国内顶尖团队研发的 AI 工具,凭借其卓越的性能和丰富的功能,逐渐在众多同类产品中脱颖而出,成为众多用户在工作和学习中的得力助手。 …...

leetcode:627. 变更性别(SQL解法)

难度:简单 SQL Schema > Pandas Schema > Salary 表: ----------------------- | Column Name | Type | ----------------------- | id | int | | name | varchar | | sex | ENUM | | salary | int …...

51单片机(国信长天)矩阵键盘的基本操作

在CT107D单片机综合训练平台上,首先将J5处的跳帽接到1~2引脚,使按键S4~S19按键组成4X4的矩阵键盘。在扫描按键的过程中,发现有按键触发信号后(不做去抖动),待按键松开后,在数码管的第一位显示相应的数字:从左至右&…...

封装一个sqlite3动态库

作者:小蜗牛向前冲 名言:我可以接受失败,但我不能接受放弃 如果觉的博主的文章还不错的话,还请点赞,收藏,关注👀支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 目录 一、项目案例 二…...

装饰模式(Decorator Pattern)重构java邮件发奖系统实战

前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...

java_网络服务相关_gateway_nacos_feign区别联系

1. spring-cloud-starter-gateway 作用:作为微服务架构的网关,统一入口,处理所有外部请求。 核心能力: 路由转发(基于路径、服务名等)过滤器(鉴权、限流、日志、Header 处理)支持负…...

PHP和Node.js哪个更爽?

先说结论,rust完胜。 php:laravel,swoole,webman,最开始在苏宁的时候写了几年php,当时觉得php真的是世界上最好的语言,因为当初活在舒适圈里,不愿意跳出来,就好比当初活在…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例

使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)

服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...

2024年赣州旅游投资集团社会招聘笔试真

2024年赣州旅游投资集团社会招聘笔试真 题 ( 满 分 1 0 0 分 时 间 1 2 0 分 钟 ) 一、单选题(每题只有一个正确答案,答错、不答或多答均不得分) 1.纪要的特点不包括()。 A.概括重点 B.指导传达 C. 客观纪实 D.有言必录 【答案】: D 2.1864年,()预言了电磁波的存在,并指出…...

Leetcode 3577. Count the Number of Computer Unlocking Permutations

Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接:3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯,要想要能够将所有的电脑解锁&#x…...

基础测试工具使用经验

背景 vtune,perf, nsight system等基础测试工具,都是用过的,但是没有记录,都逐渐忘了。所以写这篇博客总结记录一下,只要以后发现新的用法,就记得来编辑补充一下 perf 比较基础的用法: 先改这…...

cf2117E

原题链接&#xff1a;https://codeforces.com/contest/2117/problem/E 题目背景&#xff1a; 给定两个数组a,b&#xff0c;可以执行多次以下操作&#xff1a;选择 i (1 < i < n - 1)&#xff0c;并设置 或&#xff0c;也可以在执行上述操作前执行一次删除任意 和 。求…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)

Aspose.PDF 限制绕过方案&#xff1a;Java 字节码技术实战分享&#xff08;仅供学习&#xff09; 一、Aspose.PDF 简介二、说明&#xff08;⚠️仅供学习与研究使用&#xff09;三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...