5 分钟上手 HarmonyOS Skill:快速集成语音与意图交互能力

简介: 本文带你5分钟上手HarmonyOS Skill,快速集成语音唤醒与意图识别能力。详解Skill概念、注册配置、onNewWant响应逻辑及语音语料设置,助你让应用听懂“打开天气”“打个招呼”等自然语言指令,轻松接入小艺(Celia)生态。(239字)

5 分钟上手 HarmonyOS Skill:快速集成语音与意图交互能力

在鸿蒙生态(HarmonyOS)中,Skill 是实现智能语音助手、意图识别和跨设备服务调用的核心机制之一。通过 Skill,你的应用可以被小艺(Celia)语音唤醒、响应用户自然语言指令,甚至与其他设备上的服务无缝协作。

本文将用 5 分钟时间,带你快速理解 Skill 的基本概念,并演示如何在 HarmonyOS 应用中注册并使用一个简单的自定义 Skill。


一、什么是 HarmonyOS Skill?

Skill 是 HarmonyOS 提供的一种服务能力单元,用于描述“我能做什么”。它基于 意图(Intent) 模型,将用户语音或文本指令映射到具体的功能逻辑。

例如:

  • 用户说:“打开天气应用查看北京天气”  
  • 系统识别出意图 VIEW_WEATHER,并携带参数 {city: "北京"}
  • 你的应用通过注册对应 Skill 响应该意图,启动页面并展示数据

💡 Skill 类似于 Android 的 App Actions 或 iOS 的 Siri Shortcuts,但深度集成于鸿蒙分布式架构。


二、5 分钟实战:创建一个“打招呼”Skill

我们将创建一个简单 Skill:当用户对小艺说“让 MyApp 打个招呼”,应用弹出“Hello, HarmonyOS!”。

步骤 1:配置 config.json

module.json5(或旧版 config.json)中注册 Skill:

{
  "module": {
    "skills": [
      {
        "name": "com.example.myapp.GreetSkill",
        "type": "voice",
        "description": "响应打招呼指令",
        "actions": [
          {
            "name": "greet_user",
            "entities": []
          }
        ]
      }
    ],
    "abilities": [
      {
        "name": "MainAbility",
        "srcEntry": "./ets/entryability/EntryAbility.ets",
        "skills": [
          {
            "actions": ["greet_user"]
          }
        ]
      }
    ]
  }
}

✅ 注意:skills 定义能力,abilities 中的 skills 字段将其绑定到具体 Ability。


步骤 2:在 Ability 中处理 Skill 调用

EntryAbility.ets 中重写 onNewWant 方法(用于接收外部拉起):

import UIAbility from '@ohos.app.ability.UIAbility';
export default class EntryAbility extends UIAbility {
  onNewWant(want) {
    // 检查是否由 Skill 触发
    if (want.action === 'greet_user') {
      // 可在此启动特定页面或执行逻辑
      console.log('收到打招呼指令!');
      
      // 示例:弹出提示(需在 UI 线程)
      // 此处简化,实际应在页面中通过 ArkTS 显示
    }
  }
}

🔔 提示:若需跳转到具体页面,可在 onNewWant 中调用 this.context.startAbility() 启动目标页面,并传递参数。


步骤 3:(可选)配置语音触发语料

为了让小艺识别“让 MyApp 打个招呼”,需在 华为开发者联盟后台 提交语音模板(目前部分能力需审核):

  • 意图名称:greet_user
  • 示例语句:  
  • “让 MyApp 打个招呼”  
  • “叫 MyApp 问好”

🌐 注:本地调试可使用 DevEco Studio 的模拟器 + Intent 模拟工具 测试,无需真实语音。


三、调试技巧

  1. 使用 DevEco Studio 的“Intent 模拟器”
    在运行配置中选择 “Edit Configurations” → 添加 “Intent” 启动方式,填入 action: greet_user 即可模拟 Skill 调用。
  2. 查看日志
    通过 hdc shell 或 DevEco Log 工具观察 onNewWant 是否被触发。
  3. 权限声明
    若涉及敏感操作,需在 module.json5 中声明相应权限(如 ohos.permission.INTERNET)。

四、进阶方向

  • 使用 Entity 传递参数(如城市名、时间等)
  • 实现 Service Ability 响应后台 Skill 请求
  • 结合 元服务(Meta Service) 实现免安装卡片式交互
  • 接入 小艺开放平台,支持更多自然语言表达

结语

Skill 是 HarmonyOS 构建智能、主动、跨端服务的关键入口。虽然本文仅展示了最基础的用法,但已为你打开了通往“语音驱动应用”的大门。只需 5 分钟配置,你的应用就能听懂用户说话!

🚀 下一步建议:尝试为你的应用添加一个“查询今日待办”Skill,结合数据库返回结果——让小艺真正成为你的效率助手!


目录
相关文章
|
3月前
|
人工智能 安全 算法
从“工具过载”到“精准调用”:破解 Agent 工具管理难题
AgentScope Java × Higress:语义驱动工具精选,高效安全降成本。
380 30
|
3月前
|
人工智能 应用服务中间件 API
刚刚,阿里云上线Clawdbot全套云服务!
阿里云上线Moltbot(原Clawdbot)全套云服务,支持轻量服务器/无影云电脑一键部署,可调用百炼平台百余款千问模型,打通iMessage与钉钉消息通道,打造开箱即用的AI智能体助手。
6028 77
刚刚,阿里云上线Clawdbot全套云服务!
|
16天前
|
存储 人工智能 定位技术
一些 Harness Engineering 的实践
Harness Engineering 是AI智能体时代的新型工程范式,核心是为Agent构建可靠环境而非优化模型。OpenAI、Anthropic、LangChain等实践表明:通过结构化知识库、双重智能体架构、组件化Harness设计及自动化反馈回路,可提升Agent在长周期、大规模任务中的稳定性与自主性。
3629 3
|
3月前
|
存储 数据采集 弹性计算
面向多租户云的 IO 智能诊断:从异常发现到分钟级定位
当 iowait 暴涨、IO 延迟飙升时,你是否还在手忙脚乱翻日志?阿里云 IO 一键诊断基于动态阈值模型与智能采集机制,实现异常秒级感知、现场自动抓取、根因结构化输出,让每一次 IO 波动都有据可查,真正实现从“被动响应”到“主动洞察”的跃迁。
405 76
|
9天前
|
消息中间件 缓存 Go
Go 语言生产环境必备包清单
本文基于2025 Go开发者调查(26%视选包为最大难题),精选多年生产验证的高可靠性第三方库:testify(测试)、zerolog/logrus(日志)、pkg/errors(错误)、lo/decimal(工具)、ristretto/freecache(缓存)、chi/resty(HTTP)、franz-go(Kafka)等,并附选型原则与对比,助你高效构建稳定Go服务。(239字)
|
18天前
|
运维 监控 Cloud Native
巨人网络《超自然行动组》携手阿里云打造云原生游戏新范式
通过 ACK(容器服务)、ESS(弹性伸缩)、网络型负载均衡 NLB、OpenKruiseGame(OKG)、SLS(日志服务)、ARMS(应用实时监控服务)、阿里云原生防护(Native Protection),以及云原生数据库 polardb 和 Redis 的深度协同,巨人网络构建了一套高弹性、高可用、低成本、智能化、高安全且高性能数据处理能力的新一代游戏基础设施,为行业树立了云原生落地的标杆。如今,随着日活跃用户(DAU)突破千万大关,这套技术体系,已经成为游戏行业“云原生转型”的标杆案例。
244 10
|
19天前
|
Arthas 运维 监控
线上 JVM 故障秒解:Arthas 高阶用法与全链路定位实战指南
本文介绍阿里巴巴开源的Java诊断工具Arthas在线上JVM故障排查中的核心应用。针对CPU飙高、FullGC频繁、接口超时等常见问题,Arthas提供无需重启服务的热修复能力,包括方法热替换(trace/watch/tt命令)、线程问题定位(thread命令)、内存分析(heapdump)等核心功能。文章通过真实案例演示全链路排查流程,并给出安全使用建议,帮助开发者快速定位和解决线上问题,实现从被动救火到主动定位的转变。Arthas的字节码增强技术可实时监控JVM状态,是提升线上问题排查效率的利器。
250 1
|
1月前
|
人工智能 安全 前端开发
Team 版 OpenClaw:HiClaw 开源,5 分钟完成本地安装
HiClaw 基于 OpenClaw、Higress AI Gateway、Element IM 客户端+Tuwunel IM 服务器(均基于 Matrix 实时通信协议)、MinIO 共享文件系统打造。
9248 22