HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手
AgentCard 智能体卡片为英语学习 App 打造桌面级学习助手适用平台HarmonyOS 7.0 (API 26 Beta)一、引言HarmonyOS 7.0API 26 Beta新增了 AgentCard 智能体卡片能力这是继 HMAF鸿蒙智能体框架之后智能体技术的又一次重要演进。不同于 HMAF 的端云一体大模型集成AgentCard 聚焦于桌面级的轻量智能体呈现——它允许应用在桌面上展示一个活的智能体卡片无需打开应用即可完成高频、轻量的信息获取和操作。在我们的英语学习 App 中AgentCard 的最佳落地场景就是每日一词用户在桌面上就能看到今日要学的单词、音标和释义点击直接进入详情页甚至可以在卡片上直接标记已掌握或待复习。本文将从 AgentCard 的配置声明、生命周期管理、通信机制和实际落地四个方面展开。二、AgentCard 配置声明与解析流程2.1 配置文件声明AgentCard 的声明方式与普通的 Form 卡片类似但增加了智能体相关的配置项。在resources/base/profile/目录下创建agent_card_config.json{agentCards: [ {cardName:DailyWordAgent,cardType:agent,description:每日一词智能体卡片,updateEnabled: true,scheduledUpdateTime:08:00,agentConfig: {agentId:com.example.englishapp.dailyword,displayMode:compact,interactiveActions: [mark_known,mark_review],dataSource:LearningPlanManager},formConfig: {dimension:2x2,supportDimensions: [2x2,4x2],defaultGrid:4,colorMode:auto} } ] }其中agentConfig是 AgentCard 独有的配置段定义了智能体的 ID、展示模式、支持的交互动作和数据源。这个配置文件需要在module.json5中注册{module: {proxyConfigs: [ {type:agentCard,configFile:resources/base/profile/agent_card_config.json} ] } }2.2 解析流程系统在应用安装时解析agent_card_config.json验证配置合法性后注册到卡片管理服务中。解析流程依次校验语法校验JSON 格式是否正确必填字段是否完整语义校验agentId 是否唯一、displayMode 是否在支持范围内资源校验引用的布局文件、图标资源是否存在权限校验应用是否声明了所需的权限通过校验后卡片服务将 AgentCard 注册到桌面用户即可在桌面添加该卡片。三、AgentCard 持久化与状态恢复AgentCard 真正的价值在于其持久化能力——即使应用进程被系统回收卡片仍然在桌面上存活状态不会丢失。3.1 状态持久化策略AgentCard 使用独立的持久化存储通道与应用自身的 Preferences 存储隔离exportclassDailyWordAgentCard{privatecardState:AgentCardState;publicasyncsaveState():Promisevoid {conststateData {currentWord:this.cardState.currentWord,wordIndex:this.cardState.wordIndex,status:this.cardState.status,lastUpdateTime:Date.now() };awaitagentCard.savePersistentState(daily_word_state, stateData); }publicasyncrestoreState():Promisevoid {constsavedState awaitagentCard.getPersistentState(daily_word_state);if(savedState) {this.cardState savedStateasAgentCardState; } } }系统在下列时机自动触发状态保存应用进程进入后台卡片执行交互操作后定期每 30 分钟快照保存3.2 状态恢复时机当用户重启设备或应用被重新拉起时AgentCard 按以下流程恢复桌面卡片服务启动加载持久化的卡片状态快照应用进程被唤醒如果未运行系统调用onCreateForm()回调传入上次保存的状态应用根据状态重建卡片 UIonCreateForm(want: Want): formBindingData.FormBindingData {constsavedState want.parameters?.agentCardState;if(savedState) {// 恢复状态constword JSON.parse(savedStateasstring);returnthis.buildFormData(word); }// 首次创建从 LearningPlanManager 获取今日单词returnthis.buildFormData(LearningPlanManager.getInstance().getTodayWord()); }四、卡片与主应用的通信机制AgentCard 支持双向通信卡片 → 应用的跳转和事件传递以及应用 → 卡片的数据更新推送。4.1 卡片跳转主应用在卡片布局中配置点击跳转事件EntryComponentstruct DailyWordCard { build() { Column() { Text(this.wordText) .fontSize(16) .onClick(() { postCardAction(this, { action:router, bundleName:com.example.englishapp, abilityName:EntryAbility, params: { page:CourseHomePage, wordId:this.wordId, from:agent_card} }); }); } } }postCardAction是 AgentCard 特有的 API支持三种 action 类型router跳转到应用指定页面message向应用发送消息无需跳转call调用应用的后台能力4.2 应用更新卡片数据当 LearningPlanManager 的今日目标发生变化时应用主动刷新卡片publicasyncupdateCardWithTodayWord(): Promisevoid{consttodayWord this.getTodayWord();constformData formBindingData.createFormBindingData({ wordText: todayWord.word, phonetic: todayWord.phonetic, meaning: todayWord.meaning });awaitformProvider.updateForm(this.cardId, formData); }五、智能体卡片生命周期管理AgentCard 的生命周期比普通 Form 卡片更加复杂因为它包含了智能体的状态管理Created→Active→Background→Suspended→Destroyed↓Interactive用户操作触发不同状态的资源占用策略状态更新频率内存占用是否可交互Active实时正常是Background按策略默认 30 分钟低是Suspended不更新极低否Destroyed—0否应用可以监听生命周期回调合理管理资源onFormEvent(formId:string,event:string) {switch(event) {caseonVisibilityChange:// 卡片从桌面消失/重新出现break;caseonAcquire:// 卡片被添加到桌面this.startDailyUpdate();break;caseonReload:// 卡片状态需要刷新this.refreshCardData();break; } }六、项目落地桌面每日一词智能体卡片6.1 卡片布局设计卡片采用 2x2 尺寸展示核心信息┌──────────────┐ │ 每日一词 │ │ │ │ enthusiasm │ │/ɪnˈθjuːziæzəm/│ │ n. 热情热忱 │ │ │ │ [已掌握] [待复习] │ └──────────────┘6.2 核心代码实现EntryComponentstruct DailyWordAgentCard {LocalwordText: string ;Localphonetic: string ;Localmeaning: string ;LocalwordId: number 0;build() {Column({ space: 4 }) {// 顶部标题Row() {Image($r(app.media.ic_daily_word)).width(16).height(16)Text(每日一词).fontSize(12).fontColor(#666666) }// 单词信息Text(this.wordText).fontSize(18).fontWeight(FontWeight.Bold)Text(this.phonetic).fontSize(12).fontColor(#888888)Text(this.meaning).fontSize(14).margin({top:4})// 操作按钮Row({ space: 8 }) {Button(已掌握).onClick(() {postCardAction(this, { action: message, data: { action: mark_known, wordId: this.wordId } }); })Button(待复习).onClick(() {postCardAction(this, { action: message, data: { action: mark_review, wordId: this.wordId } }); }) } }.padding(12).backgroundColor(#FFFFFF).borderRadius(12) } }七、最佳实践与注意事项7.1 数据更新策略AgentCard 的自动更新依赖系统调度并非精确到秒。我们的策略是每日 08:00 系统触发定时更新展示今日单词用户在应用内学习新词后主动推送更新卡片上执行已掌握操作后立即刷新为下一个待学单词7.2 性能考量AgentCard 运行在独立进程卡片服务中但渲染资源有限。因此卡片布局尽量扁平避免深层嵌套图片资源控制在 50KB 以内避免在卡片 onUpdate 中执行耗时操作7.3 与 Form 卡片的区别维度普通 Form 卡片AgentCard 智能体卡片数据源静态绑定动态智能推荐交互能力有限的点击跳转丰富的行内操作状态持久化基础快照完整状态机更新策略固定刷新周期智能触发 差异化刷新八、总结AgentCard 智能体卡片是 HarmonyOS 7.0 在桌面交互维度的重要创新。对于英语学习 App 而言每日一词AgentCard 将学习入口前置到桌面用户无需打开应用即可完成看单词→回忆释义→标记状态的完整学习闭环。这种高频轻量的交互模式天然适合语言学习场景。随着 API 的进一步成熟AgentCard 还可以扩展到每日一句听力训练等更多学习场景。

相关新闻

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/20 21:46:49 阅读更多 →
免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/21 16:42:28 阅读更多 →
5分钟解密透明悬浮浏览器:如何基于Electron构建跨窗口交互新范式

5分钟解密透明悬浮浏览器:如何基于Electron构建跨窗口交互新范式

5分钟解密透明悬浮浏览器:如何基于Electron构建跨窗口交互新范式 【免费下载链接】glass-browser A floating, always-on-top, transparent browser for Windows. 项目地址: https://gitcode.com/gh_mirrors/gl/glass-browser 桌面应用的多任务处理一直是用户…

2026/8/21 11:13:51 阅读更多 →

最新新闻

Windows 防休眠工具怎么选:NoSleep 单文件 180KB,普通账户就能跑

Windows 防休眠工具怎么选:NoSleep 单文件 180KB,普通账户就能跑

Windows 防休眠工具怎么选:NoSleep 单文件 180KB,普通账户就能跑 【免费下载链接】NoSleep Lightweight Windows utility to prevent screen locking 项目地址: https://gitcode.com/gh_mirrors/nos/NoSleep 180KB,这就是 NoSleep 的全…

2026/8/21 16:44:47 阅读更多 →
三步让日文Unity游戏说中文:XUnity自动翻译器上手指南

三步让日文Unity游戏说中文:XUnity自动翻译器上手指南

三步让日文Unity游戏说中文:XUnity自动翻译器上手指南 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator 刚打开一款日文 Unity RPG,主菜单和角色对话全是日语。装上 XUnity自动翻译器…

2026/8/21 16:44:47 阅读更多 →
智能体供应链运行时攻击:AI Agent安全新威胁与纵深防御策略

智能体供应链运行时攻击:AI Agent安全新威胁与纵深防御策略

1. 项目概述:当智能体供应链遇上运行时攻击最近在跟进一些前沿的供应链安全研究,发现一个趋势越来越明显:传统的软件供应链攻击(比如投毒开源包、劫持构建流程)大家已经讨论得很多了,但伴随着AI Agent&…

2026/8/21 16:44:47 阅读更多 →
XUnity AutoTranslator 安装教程:给 Unity 游戏装上一键自动汉化

XUnity AutoTranslator 安装教程:给 Unity 游戏装上一键自动汉化

XUnity AutoTranslator 安装教程:给 Unity 游戏装上一键自动汉化 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator 刚打开一款新买的日系 Unity 游戏,满屏外文,剧情全靠脑…

2026/8/21 16:44:47 阅读更多 →
baidupankey 百度网盘提取码解析工具:3秒拿到提取码,完整指南

baidupankey 百度网盘提取码解析工具:3秒拿到提取码,完整指南

baidupankey 百度网盘提取码解析工具:3秒拿到提取码,完整指南 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 周五晚上,班级群突…

2026/8/21 16:44:47 阅读更多 →
如何快速上手 Seraphine:从 0 到跑通的英雄联盟战绩查询完整教程

如何快速上手 Seraphine:从 0 到跑通的英雄联盟战绩查询完整教程

如何快速上手 Seraphine:从 0 到跑通的英雄联盟战绩查询完整教程 【免费下载链接】Seraphine 英雄联盟战绩查询工具 项目地址: https://gitcode.com/gh_mirrors/se/Seraphine Seraphine 是一款基于客户端接口的英雄联盟战绩查询工具:匹配、BP、进…

2026/8/21 16:43:47 阅读更多 →

日新闻

机场边检旅客定位系统国产化白皮书:算法、硬件、底座平台全程自主

机场边检旅客定位系统国产化白皮书:算法、硬件、底座平台全程自主

前言随着国家数字基础设施信创替代、关键技术自主可控战略持续深化,口岸智慧安防、边检智能管控领域正全面进入国产化、自主化、安全可控升级周期。当前国内机场边检旅客识别与定位体系长期依赖国外商用视觉算法、进口成像硬件、闭源通用计算平台,存在核…

2026/8/21 0:00:42 阅读更多 →
别再把“数字孪生”当空间智能了!镜像视界揭开四维时空的真正面纱

别再把“数字孪生”当空间智能了!镜像视界揭开四维时空的真正面纱

别再把“数字孪生”当空间智能了!镜像视界揭开四维时空的真正面纱当下数字化建设浪潮中,很多项目将三维可视化、视频贴图叠加的数字孪生等同于空间智能。传统数字孪生更多停留在三维场景复刻,擅长把物理世界“画出来、展示出来”,…

2026/8/21 0:00:42 阅读更多 →
105、车载温度范围-40°C到85°C的影像质量一致性——ISP参数温漂补偿与产线标定策略

105、车载温度范围-40°C到85°C的影像质量一致性——ISP参数温漂补偿与产线标定策略

105、车载温度范围-40C到85C的影像质量一致性——ISP参数温漂补偿与产线标定策略 去年冬天在北方某车厂做A样评审,凌晨四点的黑河试验场,零下三十三度。客户拿了一台冷启动的车,中控屏上倒车影像全是雪花噪点,暗部细节直接糊成一片。我第一反应是sensor温度没上来,暗电流…

2026/8/21 0:00:42 阅读更多 →

周新闻

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

基于阿里云与通义千问(Qwen)构建AI应用:从模型调用到生产部署的完整实践指南

如果你是一名开发者,最近可能已经感受到了AI大模型正在从“玩具”变成“生产力工具”的强烈信号。从代码补全到智能Agent,从本地部署到云端API,我们正处在一个技术栈快速重构的节点。然而,面对层出不穷的模型、框架和工具&#xf…

2026/8/21 3:21:33 阅读更多 →
工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

工业通信系统底层逻辑:04 反射——高频能量撞墙之后会发生什么?

第四篇:反射——高频能量撞墙之后会发生什么? —— 你以为信号已经过去了,其实它正在回来打你 老Q的现场笔记 第五季,我们正式进入工业神经系统层。这里不再是单个设备的战斗,而是整个工厂“经脉”层面的秩序之战。从这一篇开始,你将第一次看清:看似简单的信号传播,背…

2026/8/21 0:02:09 阅读更多 →
【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

2026/8/21 6:07:56 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/21 16:42:28 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/20 21:46:49 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/21 0:14:22 阅读更多 →