前言为什么你需要关注意图框架回想一下上次你打开一个 App 只为了看一个信息电影票座位、快递物流、航班动态……结果被迫经历了启动页、广告弹窗、首页推荐、层层菜单最后才找到想要的内容。如果下次你只需要对小艺说出你的需求你的 App 就能直接从系统层拉起目标页面用户会不会更喜欢用你的应用就像以下动图中展示的那样查天气、买电影票、设闹钟都能对小艺一句话实现。你的 App 功能同样可以拥有这种体验。这不是产品愿景而是鸿蒙意图框架此刻就能提供的接入能力。意图框架Insight-Intent是鸿蒙生态中连接应用与系统级 AI 入口的关键桥梁。通过它你可以将 App 的核心功能封装成标准化「意图」让小艺语音、小艺建议等系统入口能够智能识别并直接调用——用户一句话你的功能即刻响应。目前鸿蒙意图框架已覆盖影音娱乐、出行导航、便捷生活、金融理财、健康医疗等十余个垂域开放了上百种标准可接入能力例如播放音视频、骑行/驾车导航、查快递缴话费、查社保公积金、股票基金交易、医院挂号等常见场景开发者既可接入官方预置标准意图也可自定义专属业务意图。官方标准意图垂域与能力清单可查阅标准意图接入规范 https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/insight-intent-access-specifications本文用最通俗的语言讲透基础概念再手把手带你 5 分钟完成首个意图 Demo。一、意图框架基础概念1. 什么是意图框架意图框架是鸿蒙提供的应用功能开放框架让 App 的核心能力能够被小艺等系统入口直接调用实现「一句话直达」的智能体验。简单举例传统方式用户想买电影票 → 打开你的 App → 找到电影模块 → 选影片 → 选场次 → 确认购买5 步操作意图框架方式用户对小艺说「帮我买《给阿嬷的情书》今晚7点半的电影票」→ 小艺识别意图 → 直接拉起你的 App 购票页面并自动填充影片、场次信息→ 用户只需确认支付2 步完成2. 核心基础名词新手必懂名词一句话解释举例意图功能执行的最小单元购买电影票、查看电影票、播放音乐意图参数系统从用户语音或文字中提取并传给 App 的数据{movieName: 给阿嬷的情书, time: 19:30}意图执行结果App 执行后返回给系统的反馈{success: true, orderId: NO20260520001, seatNumber: 4排9座}3. 运行机制极简拆解意图开发开发者基于 App 业务功能通过配置文件或装饰器定义意图、参数和执行逻辑。意图查询系统入口可以查询注册到意图框架的意图及其功能。意图执行系统入口解析用户自然语言或操作指令匹配对应意图传递参数给 AppApp 执行对应功能后将执行结果回传给系统系统将结果反馈给用户。4. 两种开发方式对比意图框架提供两种开发方式新手优先推荐装饰器开发开发方式适配版本核心特点适用场景通过配置文件开发API 11 及以上需新建配置文件执行文件绑定 Ability 组件适用于接入意图框架预定义意图复杂业务定制通过装饰器开发推荐API 20 及以上鸿蒙 6.0代码注解快速定义复用现有功能无需额外配置文件新手入门、已实现的功能快速接入意图框架二、意图框架接入 Demo5 分钟上手前置准备开发环境DevEco Studio适配API 20鸿蒙 6.0 及以上设备鸿蒙6.0及以上版本手机开发方式通过装饰器开发无需额外配置文件极简实现。Demo 目标实现一个拉起 App 订票页面意图通过系统意图调试工具触发自动拉起 App 的订票页面新手快速验证意图调用能力。步骤 1创建鸿蒙工程新建Empty Ability工程API 版本选择API 20及以上版本等待工程同步完成。步骤 2创建订票信息页面新建 entry/src/main/ets/pages/BookingInfoPage.ets添加页面信息EntryComponentstruct BookingInfoPage{StateorderNumber:stringNO20260520001;StatemovieName:string给阿嬷的情书;Statecinema:string嘉年华影城滨江店;StateshowTime:string2026年5月20日 19:30;StateseatInfo:string4排9座;Statestatus:string已出票;build(){Column(){// 标题栏Row(){Text( 订票信息).fontSize(24).fontWeight(FontWeight.Bold)}.width(100%).margin({top:30,bottom:20}).justifyContent(FlexAlign.Center)// 订单卡片Column(){Text(订单号${this.orderNumber}).fontSize(16).fontColor(#666666).margin({bottom:15})Divider()Row(){Text(️ 影片).fontSize(16)Text(this.movieName).fontSize(16).fontWeight(FontWeight.Medium)}.width(100%).margin({top:12})Row(){Text( 影院).fontSize(16)Text(this.cinema).fontSize(16)}.width(100%).margin({top:8})Row(){Text(⏰ 场次).fontSize(16)Text(this.showTime).fontSize(16)}.width(100%).margin({top:8})Row(){Text( 座位).fontSize(16)Text(this.seatInfo).fontSize(16).fontColor(#FF6600)}.width(100%).margin({top:8})Row(){Text( 状态).fontSize(16)Text(this.status).fontSize(16).fontColor(#00AA00)}.width(100%).margin({top:8})}.width(90%).padding(20).backgroundColor(#F5F5F5).borderRadius(12).margin({top:20})// 取票码Column(){Text(取票码).fontSize(14).fontColor(#999999).margin({bottom:5})Text(1234 5678).fontSize(20).fontWeight(FontWeight.Bold).fontColor(#FF6600).letterSpacing(4)}.width(90%).padding(15).backgroundColor(#FFF8E7).borderRadius(8).margin({top:20}).alignItems(HorizontalAlign.Center)}.width(100%).height(100%).backgroundColor(#FFFFFF)}}步骤 3添加意图装饰器定义意图在 BookingInfoPage 页面上添加 InsightIntentPage 装饰器// 导入意图框架装饰器import{InsightIntentPage}fromkit.AbilityKit;// 为订票信息页面添加意图注解——声明这是一个可被系统入口拉起的页面InsightIntentPage({intentName:ViewBookingInfo,// 意图唯一标识domain:MovieTicketsDomain,// 所属领域电影票务intentVersion:1.0.1,// 版本号displayName:查看订票信息,// 意图显示名称llmDescription:查看用户的电影票订票信息包括影片名称、影院、场次、座位和取票码,// 用于AI理解描述uiAbility:EntryAbility,// 绑定的 AbilitypagePath:./ets/pages/BookingInfoPage,// 目标页面路径})EntryComponentstruct BookingInfoPage{// ... 页面代码同上}步骤 4开启意图调试开关验证意图执行4.1 App 编译安装编译运行 App安装至手机。4.2 设备开启意图调试开关仅首次需要打开设备的「设置」应用选择「系统」菜单选择「开发者选项」菜单选择「意图框架调试」菜单打开「意图框架调试」功能开关。4.3 验证执行意图点击「查看设备上所有意图」可以查看所有已注册意图点击「查看订票信息」意图点击「执行意图」✅ App 自动拉起直接展示订票信息页面——成功相关官方链接1. 通过小艺端到端调测意图开发者测试https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/intents-skill-all-rec-dp-self-validation2. 意图上架指导意图标准协议上架指导https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/intents-kit-listing-standard-protocol3. 意图框架开发指南意图框架开发指导https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/insight-intent
鸿蒙意图框架快速入门:5 分钟实现你的第一个意图
发布时间:2026/5/23 21:00:36
前言为什么你需要关注意图框架回想一下上次你打开一个 App 只为了看一个信息电影票座位、快递物流、航班动态……结果被迫经历了启动页、广告弹窗、首页推荐、层层菜单最后才找到想要的内容。如果下次你只需要对小艺说出你的需求你的 App 就能直接从系统层拉起目标页面用户会不会更喜欢用你的应用就像以下动图中展示的那样查天气、买电影票、设闹钟都能对小艺一句话实现。你的 App 功能同样可以拥有这种体验。这不是产品愿景而是鸿蒙意图框架此刻就能提供的接入能力。意图框架Insight-Intent是鸿蒙生态中连接应用与系统级 AI 入口的关键桥梁。通过它你可以将 App 的核心功能封装成标准化「意图」让小艺语音、小艺建议等系统入口能够智能识别并直接调用——用户一句话你的功能即刻响应。目前鸿蒙意图框架已覆盖影音娱乐、出行导航、便捷生活、金融理财、健康医疗等十余个垂域开放了上百种标准可接入能力例如播放音视频、骑行/驾车导航、查快递缴话费、查社保公积金、股票基金交易、医院挂号等常见场景开发者既可接入官方预置标准意图也可自定义专属业务意图。官方标准意图垂域与能力清单可查阅标准意图接入规范 https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/insight-intent-access-specifications本文用最通俗的语言讲透基础概念再手把手带你 5 分钟完成首个意图 Demo。一、意图框架基础概念1. 什么是意图框架意图框架是鸿蒙提供的应用功能开放框架让 App 的核心能力能够被小艺等系统入口直接调用实现「一句话直达」的智能体验。简单举例传统方式用户想买电影票 → 打开你的 App → 找到电影模块 → 选影片 → 选场次 → 确认购买5 步操作意图框架方式用户对小艺说「帮我买《给阿嬷的情书》今晚7点半的电影票」→ 小艺识别意图 → 直接拉起你的 App 购票页面并自动填充影片、场次信息→ 用户只需确认支付2 步完成2. 核心基础名词新手必懂名词一句话解释举例意图功能执行的最小单元购买电影票、查看电影票、播放音乐意图参数系统从用户语音或文字中提取并传给 App 的数据{movieName: 给阿嬷的情书, time: 19:30}意图执行结果App 执行后返回给系统的反馈{success: true, orderId: NO20260520001, seatNumber: 4排9座}3. 运行机制极简拆解意图开发开发者基于 App 业务功能通过配置文件或装饰器定义意图、参数和执行逻辑。意图查询系统入口可以查询注册到意图框架的意图及其功能。意图执行系统入口解析用户自然语言或操作指令匹配对应意图传递参数给 AppApp 执行对应功能后将执行结果回传给系统系统将结果反馈给用户。4. 两种开发方式对比意图框架提供两种开发方式新手优先推荐装饰器开发开发方式适配版本核心特点适用场景通过配置文件开发API 11 及以上需新建配置文件执行文件绑定 Ability 组件适用于接入意图框架预定义意图复杂业务定制通过装饰器开发推荐API 20 及以上鸿蒙 6.0代码注解快速定义复用现有功能无需额外配置文件新手入门、已实现的功能快速接入意图框架二、意图框架接入 Demo5 分钟上手前置准备开发环境DevEco Studio适配API 20鸿蒙 6.0 及以上设备鸿蒙6.0及以上版本手机开发方式通过装饰器开发无需额外配置文件极简实现。Demo 目标实现一个拉起 App 订票页面意图通过系统意图调试工具触发自动拉起 App 的订票页面新手快速验证意图调用能力。步骤 1创建鸿蒙工程新建Empty Ability工程API 版本选择API 20及以上版本等待工程同步完成。步骤 2创建订票信息页面新建 entry/src/main/ets/pages/BookingInfoPage.ets添加页面信息EntryComponentstruct BookingInfoPage{StateorderNumber:stringNO20260520001;StatemovieName:string给阿嬷的情书;Statecinema:string嘉年华影城滨江店;StateshowTime:string2026年5月20日 19:30;StateseatInfo:string4排9座;Statestatus:string已出票;build(){Column(){// 标题栏Row(){Text( 订票信息).fontSize(24).fontWeight(FontWeight.Bold)}.width(100%).margin({top:30,bottom:20}).justifyContent(FlexAlign.Center)// 订单卡片Column(){Text(订单号${this.orderNumber}).fontSize(16).fontColor(#666666).margin({bottom:15})Divider()Row(){Text(️ 影片).fontSize(16)Text(this.movieName).fontSize(16).fontWeight(FontWeight.Medium)}.width(100%).margin({top:12})Row(){Text( 影院).fontSize(16)Text(this.cinema).fontSize(16)}.width(100%).margin({top:8})Row(){Text(⏰ 场次).fontSize(16)Text(this.showTime).fontSize(16)}.width(100%).margin({top:8})Row(){Text( 座位).fontSize(16)Text(this.seatInfo).fontSize(16).fontColor(#FF6600)}.width(100%).margin({top:8})Row(){Text( 状态).fontSize(16)Text(this.status).fontSize(16).fontColor(#00AA00)}.width(100%).margin({top:8})}.width(90%).padding(20).backgroundColor(#F5F5F5).borderRadius(12).margin({top:20})// 取票码Column(){Text(取票码).fontSize(14).fontColor(#999999).margin({bottom:5})Text(1234 5678).fontSize(20).fontWeight(FontWeight.Bold).fontColor(#FF6600).letterSpacing(4)}.width(90%).padding(15).backgroundColor(#FFF8E7).borderRadius(8).margin({top:20}).alignItems(HorizontalAlign.Center)}.width(100%).height(100%).backgroundColor(#FFFFFF)}}步骤 3添加意图装饰器定义意图在 BookingInfoPage 页面上添加 InsightIntentPage 装饰器// 导入意图框架装饰器import{InsightIntentPage}fromkit.AbilityKit;// 为订票信息页面添加意图注解——声明这是一个可被系统入口拉起的页面InsightIntentPage({intentName:ViewBookingInfo,// 意图唯一标识domain:MovieTicketsDomain,// 所属领域电影票务intentVersion:1.0.1,// 版本号displayName:查看订票信息,// 意图显示名称llmDescription:查看用户的电影票订票信息包括影片名称、影院、场次、座位和取票码,// 用于AI理解描述uiAbility:EntryAbility,// 绑定的 AbilitypagePath:./ets/pages/BookingInfoPage,// 目标页面路径})EntryComponentstruct BookingInfoPage{// ... 页面代码同上}步骤 4开启意图调试开关验证意图执行4.1 App 编译安装编译运行 App安装至手机。4.2 设备开启意图调试开关仅首次需要打开设备的「设置」应用选择「系统」菜单选择「开发者选项」菜单选择「意图框架调试」菜单打开「意图框架调试」功能开关。4.3 验证执行意图点击「查看设备上所有意图」可以查看所有已注册意图点击「查看订票信息」意图点击「执行意图」✅ App 自动拉起直接展示订票信息页面——成功相关官方链接1. 通过小艺端到端调测意图开发者测试https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/intents-skill-all-rec-dp-self-validation2. 意图上架指导意图标准协议上架指导https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/intents-kit-listing-standard-protocol3. 意图框架开发指南意图框架开发指导https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/insight-intent