HarmonyOS应用开发实战:猫猫大作战-Form Kit 动态卡片

前言

Form Kit(卡片服务)是 HarmonyOS 的桌面卡片能力。在「猫猫大作战」中,Form Kit 用于在桌面上展示今日高分签到状态

一、卡片配置

// form_config.json { "forms": [ { "name": "ScoreWidget", "description": "显示最高分", "src": "./ets/forms/ScoreWidget.ets", "window": { "designWidth": 240, "autoDesignWidth": true }, "updateEnabled": true, "scheduledUpdateTime": "08:00", "updateDuration": 2, "defaultDimension": "2*2", "supportDimensions": ["2*2", "2*4"] } ] }

二、卡片更新

import{formProvider}from'@kit.FormKit';// 主动更新卡片asyncfunctionupdateWidget(formId:string,score:number):Promise<void>{awaitformProvider.updateForm(formId,{'score':score.toString(),'playerName':AppStorage.get<string>('playerName')??'玩家','updateTime':newDate().toLocaleTimeString('zh-CN'),});}

三、卡片生命周期

阶段回调操作
创建onCreateForm初始化数据
更新onUpdateForm刷新数据
删除onDeleteForm清理资源
可见性onVisibilityChange暂停/恢复

四、最佳实践

  1. 定时更新scheduledUpdateTime每日更新
  2. 内容简洁:2×2 展示核心数字
  3. 更新频率适中:不少于 30 分钟
  4. 配置在 module.json5:注册卡片 Ability

总结

Form Kit 在桌面展示游戏卡片,显示高分和签到状态。核心要点:form_config配置卡片、updateForm更新内容、 定时更新保持新鲜

如果这篇文章对你有帮助,欢迎点赞👍、收藏⭐、关注🔔,你的支持是我持续创作的动力!


相关资源:

  • Form Kit 文档
  • 第 165 篇:live-view
  • 第 167 篇:form-ability
  • 第 169 篇:scheduled-update