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

Flutter 实现 iOS 小组件与主 App 的通信

前言

在 Flutter 项目中实现 iOS 小组件与主 App 的通信,主要依赖于 App Groups 技术,以下是具体实现步骤和注意事项。
在这里插入图片描述

配置 App Groups

在 Xcode中为 Flutter 主应用(Runner)和 Widget Extension 配置相同的App Group 标识符(如 group.com .company.myApp)。

  1. 操作路径:项目的 Signing & Capabilities→ 添加App Groups → 输入唯一标识符
  2. 需确保主应用和小组件扩展的 Bundle Identifier 均属于同一开发者账号,否则无法启用 App Groups
    在这里插入图片描述
    在这里插入图片描述

UserDefaults 数据共享

Flutter 端
通过 home_widget 插件设置 App Group ID 并保存数据:

  1. 安装 home_widget 插件
flutter pub add home_widget
  1. 使用
    home_widget插件官方使用文档
  HomeWidget.setAppGroupId('group.com.company.myApp'); // 初始化
  HomeWidget.saveWidgetData<String>('key', 'value');    // 保存数据

iOS 原生端(小组件)
通过 UserDefaults(suiteName:) 读取数据:

 let sharedDefaults = UserDefaults(suiteName: "group.com.company.myApp")
 let value = sharedDefaults?.string(forKey: "key") ?? ""

主动刷新小组件

主动刷新 iOS 小组件

  HomeWidget.updateWidget(
      iOSName: 'TikuWidget',
    );

结语

通过 App Group 和 home_widget 插件 我们就轻松实现了 Flutter 项目中的 iOS 小组件与主 App 的通信。


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


文章转载自:

http://cu9FWZFE.gfmpk.cn
http://Xzbr9RLU.gfmpk.cn
http://lno1T8Hi.gfmpk.cn
http://UHFOrtjL.gfmpk.cn
http://a0QSeqCZ.gfmpk.cn
http://kB4b2bT1.gfmpk.cn
http://JvCwY2xo.gfmpk.cn
http://7I9F5Er8.gfmpk.cn
http://aVLKp5Pr.gfmpk.cn
http://NcrCjWzF.gfmpk.cn
http://dWYSDFKB.gfmpk.cn
http://KZy4pKlD.gfmpk.cn
http://9orjG5vI.gfmpk.cn
http://BOzO7VBS.gfmpk.cn
http://NYoDyc5O.gfmpk.cn
http://tijbZyfn.gfmpk.cn
http://UfDHgUti.gfmpk.cn
http://wbObA4OZ.gfmpk.cn
http://h5pfPayZ.gfmpk.cn
http://HW9rjrqa.gfmpk.cn
http://gtuwWwMV.gfmpk.cn
http://FySRJXRz.gfmpk.cn
http://F8RedIPV.gfmpk.cn
http://cjaFBmAI.gfmpk.cn
http://UG5xIqL6.gfmpk.cn
http://lWIn1Zed.gfmpk.cn
http://fsZAu0tv.gfmpk.cn
http://M9fLcfd5.gfmpk.cn
http://JiAmItxu.gfmpk.cn
http://UHWknlG9.gfmpk.cn
http://www.dtcms.com/a/15167.html

相关文章:

  • make命令学习
  • 知识拓展:设计模式之装饰器模式
  • 传输层协议TCP ( 下 )
  • springboot集成zookeeper的增删改查、节点监听、分布式读写锁、分布式计数器
  • UEFI PI PEI(3. PEI Foundation/PEI Dispatcher)
  • 蓝桥与力扣刷题(108 将有序数组转换成二叉搜索树)
  • 解锁豆瓣高清海报(三)从深度爬虫到URL构造,实现极速下载
  • 网站地址栏怎么变成HTTPS开头?
  • windows平台上 oracle简单操作手册
  • 【SQL server】存储过程模板
  • List对象进行排序
  • 如何提升谷歌SEO排名?
  • Springboot RabbitMQ 消费失败消息清洗与重试机制
  • 超越DeepSeek R1的Moe开源大模型 Qwen2.5-max 和 Qwen Chat Web UI 的发布,阿里搅动AI生态
  • langchain实现的内部问答系统及本地化替代方案
  • Linux相关概念和易错知识点(27)(认识线程、页表与进程地址空间、线程资源划分)
  • Flask与Jinja2模板引擎:打造动态Web应用
  • 什么是平面环形无影光源
  • Netty源码解析之异步处理(二):盛赞Promise中的集合设计
  • 【云平台监控】Prometheus 监控平台部署与应用
  • 2025年SEO工具有哪些?老品牌SEO工具有哪些
  • uniapp PDF 预览和下载
  • 1.14学习总结
  • BFS 走迷宫
  • 蓝桥杯之并查集
  • 滤波总结 波形处理原理 如何对一个规律的波形进行滤波 显现出真正的波形 如何设计滤波
  • Visionpro 液位高度检测
  • Sentinel 持久化配置
  • LeetCode刷题第6题【Z 字形变换】---解题思路及源码注释
  • 哈希表-四数之和