华为创新赛获奖复盘:如何用纯端侧 AI 打造一款“有温度”的 HarmonyOS Next 应用?

鸿蒙第16篇——数据持久化 本文介绍的数据持久化是指鸿蒙应用的数据持久化存储。它是将内存中的数据通过文件或数据库的形式保存到设备存储中。鸿蒙支持多种数据存储方式, 包括用户首选项Preferences、 键值型数据库KV-Store和关系型数据库。 阅读详情

华为创新赛获奖复盘:如何用纯端侧 AI 打造一款“有温度”的 HarmonyOS Next 应用?

前言:在刚刚结束的华为创新赛中,《智伴》凭借其独特的儿童陪伴场景荣获“场景奖”。作为一个单机运行的儿童应用,它在没有网络连接的情况下,依然实现了高质量的语音交互、视觉看护和体感游戏。这听起来似乎有些不可思议,但得益于 HarmonyOS Next 强大的端侧 AI 能力,这一切成为了现实。本文将复盘《智伴》的诞生过程,从架构设计到技术选型,揭秘这款获奖作品背后的技术细节。


一、 为什么选择做“单机”儿童应用?

在移动互联网时代,几乎所有应用都依赖云端服务。但对于一款面向儿童的陪伴应用,我们从立项之初就决定走“端侧优先,单机可用”的路线。

这一决策基于以下三点考量:

  1. 隐私安全(Privacy First):
    儿童的语音、照片、视频等数据极其敏感。如果将这些数据上传云端处理,一旦发生泄漏,后果不堪设想。HarmonyOS Next 的 AI 能力(Speech Kit, Vision Kit)完全在端侧 NPU 上运行,数据不出设备,从根源上保障了隐私安全。

  2. 全场景可用(All-Scenario Access):
    儿童的使用场景非常多样,可能是在户外公园、在行驶的汽车上,或者在没有 Wi-Fi 的老家。单机应用不依赖网络,随时随地都能提供稳定的陪伴体验。

  3. 零流量成本(Zero Cost):
    对于家长来说,无需担心应用消耗大量流量;对于开发者来说,省去了昂贵的服务器带宽和 AI API 调用费用,极大地降低了运营成本。


二、 《智伴》的技术架构:模块化与原子化

为了在单机环境下实现复杂的功能,《智伴》采用了基于 ArkTS 的模块化架构。

1. 总体架构图

《智伴》的架构可以分为三层:

  • UI 交互层 (Presentation Layer):基于 ArkUI 构建,采用 @ComponentV2 状态管理,提供流畅的动画和交互体验。
  • 业务逻辑层 (Business Logic Layer):
    • 游戏引擎:负责体感游戏的逻辑判定(如 MonsterComponent)。
    • 陪伴引擎:负责语音对话管理(如 AgentPage)。
    • 看护引擎:负责后台视觉监测(如 MonitorComponent)。
  • 原子能力层 (Capability Layer):
    • AI 能力:封装了 Core Speech Kit (TTS/ASR) 和 Core Vision Kit (Object/Skeleton Detection)。
    • 数据能力:使用 SQLite (relationalStore) 存储用户进度和古诗词数据。
    • 媒体能力:利用 AVPlayer 和 TextReader 处理音视频播放。

2. Entry 模块结构解析

项目采用了标准的 HarmonyOS 工程结构,核心代码集中在 entry 模块中:

entry/src/main/ets/
├── common/             # 公共组件与工具
│   ├── speech/         # 语音能力封装 (TTSManager, TTSEngine)
│   ├── stotext/        # 语音识别封装 (SpeechRecognizer)
│   └── utils/          # 工具类 (Log, Permission)
├── model/              # 数据模型
│   ├── color/          # 颜色认知数据
│   └── entry/          # 视觉数据定义 (VisionBox, SafeRect)
├── pages/              # 页面视图
│   ├── game/           # 体感游戏 (VisionComponent, MonsterComponent)
│   ├── gushi/          # 古诗学习 (GushiPage - TextReader)
│   └── look/           # 智能看护 (MonitorComponent)
└── entryability/       # 应用入口

这种结构清晰地分离了界面、逻辑和底层能力,便于维护和扩展。


三、 核心技术选型:原生 AI 能力是关键

《智伴》能获得“场景奖”,核心在于它将鸿蒙的原生 AI 能力与儿童使用场景完美融合。

1. 听觉智能:Core Speech Kit & Speech Kit

  • 挑战:如何让应用“能听会说”,且不依赖云端?
  • 方案:
    • 利用 textToSpeech 实现本地 TTS,为游戏提供低延迟的语音反馈(如“打得好!”)。
    • 利用 TextReader 朗读控件,为古诗学习提供带有标准播控 UI 的朗读体验。
    • 利用 speechRecognizer 实现离线语音指令识别,让孩子动动嘴就能控制应用。

2. 视觉智能:Core Vision Kit

  • 挑战:如何实现“隔空操作”和“坐姿提醒”?
  • 方案:
    • skeletonDetection (骨骼点检测):实时捕捉手腕和脚踝的坐标,映射到游戏画面中,实现“拳打脚踢小怪兽”的体感玩法。
    • objectDetection (多目标检测):在后台监测屏幕前是否有“人体”,并计算人脸占比,从而判断距离是否过近。

3. 数据存储:SQLite

  • 挑战:海量的古诗词和百科知识如何离线存储?
  • 方案:
    • 使用鸿蒙内置的 SQLite 数据库,将整理好的知识库预置在应用中,查询速度快且不占内存。

四、 结语

《智伴》的成功证明了:在 HarmonyOS Next 生态下,开发者无需依赖庞大的云端算力,仅凭端侧原生能力,就能构建出体验极佳的智能化应用。 这不仅保护了隐私,更让 AI 真正变得触手可及。

在接下来的系列文章中,我们将深入代码细节,手把手教你如何实现《智伴》中的每一个核心功能。下一篇,我们将从最基础也最实用的功能开始——如何使用 TextReader 实现一个古诗词朗读播放器。

【鸿蒙专题与实战】测试体系:单元测试、组件测试与 UI 测试 本文系统讲解鸿蒙开发中的三层测试实践:底层单元测试(用Hypium框架,优先覆盖纯函数、边界与异常)、中层ViewModel逻辑、顶层仅测3-5条关键UI路径。强调测试应“越往下写得越多”,因单元测试快且成本低,而UI测试慢易出错。通过实例说明断言拆分提升定位效率,结合覆盖率报告(hvigorwtest --coverage)发现盲区,核心是“用覆盖率找漏测,而非追求数字”。附五步落地清单:建测试文件、按优先级补用例、精简UI测试、生成报告、定位未覆盖行。下一篇将开启实战项目:从需求到上架全流程。 阅读详情

相关推荐

HarmonyOS 分布式深度:跨端迁移、数据对象与多设备协同

本文深入解析鸿蒙分布式能力实战,聚焦跨端迁移、协同与共享三大形态,详解权限配置、设备发现、onContinue状态管理及分布式数据对象、KV同步机制。强调“先分清场景”“前置条件必全”“数据需重验”,揭示迁移失败、同步失效等七大常见坑,指导开发者规避陷阱,实现真实可用的多设备协同。

信息安全领域优质创作者|操作系统领域专家 86

非Transformer大模型架构实战指南:SSM、NTM与线性注意力落地场景解析

大模型推理正从数据中心向边缘设备深度渗透,而Transformer固有的O(n²)序列复杂度、高内存带宽占用和缓存敏感性,在车载MCU、工业PLC、手机端等资源受限场景中日益成为性能瓶颈。状态空间模型(SSM)、神经图灵机(NTM)和线性注意力等替代架构,凭借确定性延迟、低功耗适配与显式结构建模能力,已在语音实时识别、工业知识报告生成、金融时序分析等真实产线中规模化验证。本文聚焦工程可落地的五类非Transformer范式,结合硬件选型清单、量化鲁棒性对比与混合架构设计方法,为AI工程师提供面向边缘部署的架

weixin_30553777的博客 439

Lumerical官方案例、FDTD时域有限差分法仿真学习(十四)——超透镜(Metalens)

这个例子的目的是设计一个由圆柱形纳米棒组成的衍射超透镜。 纳米棒的半径和排列经过调整以在超透镜表面上产生所需的相位分布。 该设计通过近场和远场分析在 Ansys FDTD、RCWA(严格耦合波分析)和 OpticStudio 中得到验证。...

weixin_45719141的博客 3万+

酒店危机可视化:构建72小时响应的韧性神经反射系统

数据可视化在酒店业已超越展示工具范畴,成为支撑危机决策的核心基础设施。其本质是将分散在PMS、IoT设备、天气API、舆情平台等多源异构数据,通过动态阈值、因果归因与人机协同规则,转化为可感知、可判断、可执行的业务信号。尤其在需求坍塌、供给中断、信任断裂三类高频危机场景中,可视化驱动的‘业务层热力图—归因层因果网络—干预层一键预案’三层穿透框架,显著压缩从风险识别到精准干预的时间窗口。结合Power BI等低门槛工具落地MVP看板,让前厅经理也能在暴雨夜11分钟内定位失血点并启动客户关怀——这正是AI赋能酒

weixin_30561177的博客 414

一维光子晶体态密度计算与应用解析

态密度(DOS)是凝聚态物理和光子学中的核心概念,描述了量子态在能量空间的分布规律。基于麦克斯韦方程组的周期性介电结构分析表明,一维光子晶体通过布拉格散射形成光子带隙,其态密度曲线呈现典型的范霍夫奇点和禁带特征。这种特性使光子晶体在光学工程中具有重要价值,特别是在滤波器设计和传感器开发领域。通过转移矩阵法等数值计算手段,可以精确预测带隙位置和宽度,其中折射率对比度与周期数是关键设计参数。实际应用中,1550nm通信波段滤波器常采用Si/SiO2交替结构,而引入缺陷层则能产生高Q值缺陷模。计算优化时需注意数值

weixin_36487018的博客 193

封神台靶场,为了小芳,冲之——cookie注入

第二个靶场 打开网站 找一下注入点 一般在新闻这种里面点开看看 先判断是否存在注入 有waf 尝试了很多方法绕过都没成功,/and/,aandnd,AnD等一系列都没绕过去,乌鸡鲅鱼 删掉id=169 发现 然后判断cookie注入 在搜索框输入 Javascript:alert(document.cookie=”id=”+escape(‘169’)); 然后弹窗了(其中 “id=” 取决URL中的id= escape中的数值也是URL中id=的值)返回刚刚的页面,把ID删除后一样能正常显示。说明服务器能

Wubuqing的博客 650

〖物流终端实战 05〗纯血鸿蒙 ArkTS 高阶性能优化:长列表渲染、组件复用与内存泄漏排查

本文深度剖析鸿蒙ArkTS高阶性能优化,直击长列表卡顿与内存泄漏痛点。针对渲染,指出ForEach全量构建的缺陷,强调采用LazyForEach(V2推荐Repeat)配合增量通知及稳定业务Key;针对组件复用,明确@Reusable仅复用实例不重置状态,必须在aboutToReuse中手动清理UI状态;针对内存泄漏,总结全局监听未注销、定时器未清理及长生命周期对象持有页面引用三大元凶,并指导通过DevEco Profiler的Heap快照排查引用链。文章强调优化需遵循“先定位后改代码”原则,助力开发者打造

Eyf • 半字节的博客 641

‌NTRU算法详细教程 | 2025年最新版(基于NIST后量子密码标准更新)

‌:NTRU是当前抗量子加密的黄金标准,‌。

blns_yxl的博客 1802

HarmonyOS 7 端侧 AI 图像超分的工程化落地

用户抱怨网络差的时候图片传不上去,更严重的是,大量的私密照片上传到云端,引发了严重的隐私合规审查危机。痛定思痛后,我们决定把 AI 模型直接塞进手机里,用端侧的 NPU 来做推理,但这绝非易事。我们首先在服务端对模型进行了知识蒸馏,把参数砍掉了一大半,然后利用 MindSpore Lite 的转换工具,将模型转成了鸿蒙底层支持的。即便如此,模型依然有 20 多兆,我们最终选择了 FP16 量化,牺牲了极其微小的画质,换取了内存占用减半。推理过程极其消耗 CPU 和内存,稍微大一点的图,处理时间长达几秒。

2602_97267507的博客 158

Unity3d实现红外热成像效果

1.将需要在红外图像中高亮的物体设置到图层PostProcessing。 2.新建一个相机CameraHighLight,设置其Culling Mask为PostProcessing,也就是在这个相机中只有PostProcessing图层的物体可见。 3.新建一个RenderTexture,命名为HightLightRt,将CameraHighLight的Target Texture设HightLightRt。 4.新建一个相机Camera2,这个相机用于显示其他物体。 接下来将CameraHigh

zouxin_88的专栏 8327

基于LabVIEW控制仪器检测与监控 --普源示波器DS1102Z-E

LabVIEW 控制普源示波器 代码实现与解释

s0101100的博客 4231

AppGallery 上架自检 SOP:签名、隐私对齐与包体校验实战【鸿蒙心迹】

上架被驳回多因签名、隐私声明与包体不一致。本文提炼“签名→隐私对齐→包体校验”自检SOP,配套一键脚本与权限三角校验代码,实现90%驳回前置拦截。通过CI强制release签名、代码/声明/功能三者权限对齐、包体完整性校验,确保提审一次过。实战清单可直接抄,让过审从运气变为流程。

wdracky的专栏 322

020、Sensor 供电设计:AVDD、DVDD、IOVDD 的上电时序与纹波要求

本文总结了图像传感器(Sensor)供电设计中的关键要点与常见问题:1. 三路供电特性差异:AVDD(模拟供电)对纹波最敏感(通常<30mVpp),DVDD需应对大电流瞬态变化,IOVDD需满足MIPI接口电压稳定要求。2. 上电时序至关重要,应遵循"模拟→数字→IO"的启动顺序,时序偏差可能导致初始化失败。3. 纹波控制需合理选择电容组合(如10μF+0.1μF),注意布局走线及电容ESR/ESL特性。4. 调试建议使用示波器多通道测量时序和纹波,重点关注传感器启动瞬间的电源特性。5. 经验教训包括预留设

sundong_81的博客 522

窗口销毁了监听还在,HarmonyOS 7 生命周期释放的归属分界

综上所述,onWindowStageWillDestroy 是窗口监听的最后安全出口,onWindowStageDestroy 只负责断开窗口引用,onDestroy 管 Ability 级资源——三者不是“程度不同的退出回调”,而是各自有明确的归属范围。窗口监听的所有者是 WindowStage,定时器的所有者是 UIAbility,播放器的所有者是页面或 Ability(取决于你在哪一层创建的),ApplicationContext 监听的所有者是 Ability 的 context。

qq_61905492的博客 199

Ghost卷积原理与构建YOLOv11的GhostNet变体

本文探讨了在边缘设备部署YOLOv11时使用Ghost卷积进行模型轻量化的实践经验。针对Jetson Nano的4GB内存限制,作者通过替换Backbone中的3x3标准卷积为Ghost卷积,实现了参数减少28%、推理速度提升38%,仅损失1.1%mAP的优化效果。文章详细介绍了Ghost卷积的实现原理、在YOLOv11中的具体替换策略,以及训练调参和部署优化的关键技巧。作者强调轻量化是计算效率与模型性能的权衡,建议工程团队保留原模型和Ghost变体两个版本,根据实际需求灵活切换。Ghost卷积的核心价值在

as1225120794的博客 169

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

鸿蒙平板能当电脑第二块屏幕吗?ToDesk、向日葵镜像/副屏实测

本文对比测试了ToDesk鸿蒙版4.8.3.0与向日葵鸿蒙版16.8.0在连接鸿蒙平板作为电脑副屏的表现。结果显示,ToDesk可直接实现镜像屏与扩展屏功能,支持参数调节,操作流畅;而向日葵副屏需开通会员才能使用。对于已有鸿蒙平板的用户,ToDesk能有效拓展工作空间,提升多任务效率,尤其适合临时办公、出差等场景,具备较高实用价值。

2501_91062530的博客 2326

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

React Native for OpenHarmony 实战:react-native-file-logger 日志库鸿蒙化适配

本文记录了将 react-native-file-logger 适配至 OpenHarmony 的实战过程。基于鸿蒙 7.0 模拟器,通过 5 个 TurboModule 方法实现日志落盘、轮转、列举与删除,采用 fileIo 实现核心功能,支持按大小和跨天轮转,归档文件命名精确至毫秒。邮件发送功能因平台限制按能力边界处理,明确拒绝并提示用户手动导出。验证通过,日志文件结构清晰,内容完整,产出 HAP 示例与独立 HAR 库,中英双语文档齐全,为鸿蒙应用日志管理提供可靠方案。

m0_62930060的博客 251

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

【鸿蒙心迹】深色模式适配全链路——从配置到自定义(HarmonyOS 7.x)

系统切深色模式,应用没跟着变;图片在深色模式下刺眼;自定义绘制颜色没适配——深色模式不是"换个背景色",是颜色/图片/材质/状态栏的全链路适配。本文用涟漪睡眠 App 适配深色模式为案例,给完整方案与 5 个踩坑。

腾讯云创作之星、华为云云享专家,深耕电商全栈高并发系统实战,分享可商用商城项目源码。 362

平行视界兼容模式与魔法变量配置避坑【鸿蒙心迹】

本文详解折叠屏兼容模式下“魔法变量”配置的五大易错点,强调maxWindowRatio与minWindowRatio必须满足max ≥ min、centerAlign需显式设为true、minCompitableVersion拼写为Compitable等关键细节。通过校验函数实现上线前批量机型测试,结合排查流程图快速定位分栏失效问题。虽兼容模式可零代码实现分栏,但存在状态共享风险,长期仍建议按规范开发原生平行视界分栏。

wdracky的专栏 1088

【共创稿事节】HarmonyOS 7.0 Marquee跑马灯:从接入到生产验证

HarmonyOS 7.0 Marquee跑马灯:从接入到生产验证:真实工程复盘,附代码与验证方法。

2401_84996024的博客 165

鸿蒙远程控制软件哪个好?华为远程PC、ToDesk、向日葵三款实测

综合来看,本次横测最终更推荐ToDesk:它在支持跨品牌连接的基础上,外接鼠标、全屏远控、移动设备协助和多屏功能覆盖更完整,更适合作为主力远控工具。

2401_85083137的博客 340

HarmonyOS 7 应用冷启动与包体积优化实录

我们在构建脚本里加入了一个自动转换任务,将除了极其复杂的透明图之外的所有静态资源,全部转换为 WebP 格式。为了这 5% 的用户,让 95% 的用户承担 30MB 的下载成本,显然不划算。目录,里面躺着无数历史遗留的高清切图,有些是早被废弃的活动图,有些是同一张图的多个尺寸备份。这一招,直接砍掉了将近 15MB 的死重。我们将短视频相关的所有代码、图片、甚至底层的播放器三方库,全部剥离到了独立的 Feature 模块(HSP)中。包变小了,启动速度自然会快一点,但真正的瓶颈在于冷启动时的初始化逻辑。

2502_91284977的博客 171

导航该收起来,还是留在左边?HarmonyOS 6 侧栏小练习

手机宽度下,分类一直占着左边,正文会被挤得很窄;宽窗口下,每次切分类都先打开一个抽屉,又显得多了一步。这次让同一个导航内容根据空间换一种出现方式:宽时常驻左侧,窄时放到覆盖式抽屉里。分类选中状态始终是一份,切完分类后收起抽屉,正文立即显示对应路线。判断这份导航是否合适,可以回到一次切路线的动作:找得到目录,选得中分类,关掉后正文仍是刚才那一条。宽窄变化只影响目录出现的位置和时机。后面扩展层级或接入真实路线时,也先保住这一条连贯的操作。

程序猿追的博客 251

HarmonyOS 7 新特性14:音频编创深潜——12节点格式契约、7链时延表与EQ不设参引发的系统库崩溃

本文深度剖析HarmonyOS 7音频编创系统中12类节点的格式契约与链式处理机制,揭示因未设置均衡器增益参数导致系统库崩溃的核心问题。通过7条链路实测,验证降噪节点引入约3秒延迟,音源分离首测成功(耗时14.6秒),并发现格式契约存在软约束(如降噪输出强制16k/1ch但系统静默容忍错误配置)。研究确认:节点格式由链尾决定,需动态查表配置;均衡器等节点必须调用参数接口初始化缓冲,否则触发不可捕获的SIGSEGV。

轻口味的专栏 233

从 JChemPaint 到 BondDraw:一个化学结构编辑器的鸿蒙 PC 上架实录

这次上架最大的收获是流程的确定性:AGC 五步——建应用、签名、传包、审核、上架——对任何形态的鸿蒙 PC 应用都一样,坑集中在签名分流和工程收尾两处。而纯 ArkTS 路线的回报也在这一刻兑现:几百 KB 的包体、零权限的权限表、一个可以低成本持续迭代的市场通道——“版本/升级”入口已经在 AGC 里候着,下一版只是 versionCode 加一的事。

全沾软贱开发攻城狮 1万+

脱离 IDE 的自动化构建 HarmonyOS 7 CI/CD 签名与打包流水线

每次发版前,都要在本地打包、重命名、上传到测试平台,不仅浪费时间,还极容易因为手滑拿错版本。配合上代码混淆(Obfuscation),即使被人反编译,也抓不到你的真实接口地址。这要求你在 GitLab 的 CI/CD 变量里,把密码加密存储,并在流水线脚本里通过环境变量注入。在流水线环境中,守护进程会导致文件句柄无法释放,下一次构建时直接报错文件被占用。没问题,但在流水线上跑,极其容易报 Node.js 版本不兼容或者找不到模块。拉取依赖时,如果配置了私有仓库,可能需要凭证。不要用 IDE,打开终端,用。

2602_97267507的博客 233
上一篇: FFmpeg添加字幕的详细操作
下一篇: 华为创新赛获奖复盘:不仅是 TTS,用 HarmonyOS Speech Kit 让你的应用秒变“哄娃神器”
秦城季
博客等级 码龄10年 46粉丝 38原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值