鴻蒙意圖框架快速入門:5 分鐘實現(xiàn)你的第一個意圖

前言:為什么你需要關(guān)注意圖框架?

回想一下,上次你打開一個 App 只為了看一個信息:電影票座位、快遞物流、航班動態(tài)……結(jié)果被迫經(jīng)歷了啟動頁、廣告彈窗、首頁推薦、層層菜單,最后才找到想要的內(nèi)容。

如果下次你只需要對小藝說出你的需求,你的 App 就能直接從系統(tǒng)層拉起目標(biāo)頁面,用戶會不會更喜歡用你的應(yīng)用? 就像以下動圖中展示的那樣:查天氣、買電影票、設(shè)鬧鐘,都能對小藝一句話實現(xiàn)。你的 App 功能,同樣可以擁有這種體驗。這不是產(chǎn)品愿景,而是鴻蒙意圖框架此刻就能提供的接入能力。
意圖框架(Insight-Intent)是鴻蒙生態(tài)中連接應(yīng)用與系統(tǒng)級 AI 入口的關(guān)鍵橋梁。通過它,你可以將 App 的核心功能封裝成標(biāo)準(zhǔn)化「意圖」,讓小藝語音、小藝建議等系統(tǒng)入口能夠智能識別并直接調(diào)用——用戶一句話,你的功能即刻響應(yīng)。 目前鴻蒙意圖框架已覆蓋影音娛樂、出行導(dǎo)航、便捷生活、金融理財、健康醫(yī)療等十余個垂域,開放了上百種標(biāo)準(zhǔn)可接入能力,例如播放音視頻、騎行/駕車導(dǎo)航、查快遞繳話費(fèi)、查社保公積金、股票基金交易、醫(yī)院掛號等常見場景,開發(fā)者既可接入官方預(yù)置標(biāo)準(zhǔn)意圖,也可自定義專屬業(yè)務(wù)意圖。官方標(biāo)準(zhǔn)意圖垂域與能力清單可查閱:標(biāo)準(zhǔn)意圖接入規(guī)范?https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/insight-intent-access-specifications 本文用最通俗的語言講透基礎(chǔ)概念,再手把手帶你 5 分鐘完成首個意圖 Demo。

一、意圖框架基礎(chǔ)概念

1. 什么是意圖框架

意圖框架是鴻蒙提供的應(yīng)用功能開放框架,讓 App 的核心能力能夠被小藝等系統(tǒng)入口直接調(diào)用,實現(xiàn)「一句話直達(dá)」的智能體驗。 簡單舉例 傳統(tǒng)方式:用戶想買電影票 → 打開你的 App → 找到電影模塊 → 選影片 → 選場次 → 確認(rèn)購買(5 步操作) 意圖框架方式:用戶對小藝說「幫我買《給阿嬤的情書》今晚7點(diǎn)半的電影票」→ 小藝識別意圖 → 直接拉起你的 App 購票頁面,并自動填充影片、場次信息→ 用戶只需確認(rèn)支付(2 步完成)

2. 核心基礎(chǔ)名詞(新手必懂)

名詞 一句話解釋 舉例
意圖 功能執(zhí)行的最小單元 購買電影票 、查看電影票、播放音樂
意圖參數(shù) 系統(tǒng)從用戶語音或文字中提取并傳給 App 的數(shù)據(jù) {movieName: "給阿嬤的情書", time: "19:30"}
意圖執(zhí)行結(jié)果 App 執(zhí)行后返回給系統(tǒng)的反饋 {success: true, orderId: "NO20260520001", seatNumber: "4排9座"}

3. 運(yùn)行機(jī)制極簡拆解

意圖開發(fā):開發(fā)者基于 App 業(yè)務(wù)功能,通過配置文件或裝飾器,定義意圖、參數(shù)和執(zhí)行邏輯。 意圖查詢:系統(tǒng)入口可以查詢注冊到意圖框架的意圖及其功能。 意圖執(zhí)行:系統(tǒng)入口解析用戶自然語言或操作指令,匹配對應(yīng)意圖,傳遞參數(shù)給 App,App 執(zhí)行對應(yīng)功能后將執(zhí)行結(jié)果回傳給系統(tǒng),系統(tǒng)將結(jié)果反饋給用戶。

4. 兩種開發(fā)方式對比

意圖框架提供兩種開發(fā)方式,新手優(yōu)先推薦裝飾器開發(fā)
開發(fā)方式 適配版本 核心特點(diǎn) 適用場景
通過配置文件開發(fā) API 11 及以上 需新建配置文件+執(zhí)行文件,綁定 Ability 組件 適用于接入意圖框架預(yù)定義意圖,復(fù)雜業(yè)務(wù)定制
通過裝飾器開發(fā)(推薦) API 20 及以上(鴻蒙 6.0+) 代碼注解快速定義,復(fù)用現(xiàn)有功能,無需額外配置文件 新手入門、已實現(xiàn)的功能快速接入意圖框架

二、意圖框架接入 Demo(5 分鐘上手)

前置準(zhǔn)備

開發(fā)環(huán)境:DevEco Studio,適配API 20(鴻蒙 6.0 及以上); 設(shè)備:鴻蒙6.0及以上版本手機(jī); 開發(fā)方式:通過裝飾器開發(fā),無需額外配置文件,極簡實現(xiàn)。

Demo 目標(biāo)

實現(xiàn)一個拉起 App 訂票頁面意圖:通過系統(tǒng)意圖調(diào)試工具觸發(fā),自動拉起 App 的訂票頁面,新手快速驗證意圖調(diào)用能力。

步驟 1:創(chuàng)建鴻蒙工程

新建Empty Ability工程,API 版本選擇API 20及以上版本,等待工程同步完成。

步驟 2:創(chuàng)建訂票信息頁面

新建 entry/src/main/ets/pages/BookingInfoPage.ets,添加頁面信息:
@Entry
@Component
struct?BookingInfoPage?{
??@State?orderNumber:?string?=?'NO20260520001';
??@State?movieName:?string?=?'給阿嬤的情書';
??@State?cinema:?string?=?'嘉年華影城(濱江店)';
??@State?showTime:?string?=?'2026年5月20日 19:30';
??@State?seatInfo:?string?=?'4排9座';
??@State?status:?string?=?'已出票';

??build() {
? ??Column() {
? ? ??// 標(biāo)題欄
? ? ??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('?? 狀態(tài):')
? ? ? ? ? ? .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 裝飾器:
// 導(dǎo)入意圖框架裝飾器
import?{?InsightIntentPage?}?from?'@kit.AbilityKit';
// 為訂票信息頁面添加意圖注解——聲明這是一個可被系統(tǒng)入口拉起的頁面
@InsightIntentPage({
??intentName:?'ViewBookingInfo', ? ? ? ?// 意圖唯一標(biāo)識
??domain:?'MovieTicketsDomain', ? ? ? ?// 所屬領(lǐng)域:電影票務(wù)
??intentVersion:?'1.0.1', ? ? ? ? ? ? ?// 版本號
??displayName:?'查看訂票信息', ? ? ? ? ??// 意圖顯示名稱
??llmDescription:?'查看用戶的電影票訂票信息,包括影片名稱、影院、場次、座位和取票碼', ?// 用于AI理解描述
??uiAbility:?'EntryAbility', ? ? ? ? ? ?// 綁定的 Ability
??pagePath:?'./ets/pages/BookingInfoPage', ?// 目標(biāo)頁面路徑
})
@Entry
@Component
struct?BookingInfoPage?{
??// ... 頁面代碼同上
}

步驟 4:開啟意圖調(diào)試開關(guān)&驗證意圖執(zhí)行

4.1 App 編譯安裝

編譯運(yùn)行 App,安裝至手機(jī)。

4.2 設(shè)備開啟意圖調(diào)試開關(guān)(僅首次需要)

打開設(shè)備的「設(shè)置」應(yīng)用; 選擇「系統(tǒng)」菜單; 選擇「開發(fā)者選項」菜單; 選擇「意圖框架調(diào)試」菜單; 打開「意圖框架調(diào)試」功能開關(guān)。

4.3 驗證執(zhí)行意圖

點(diǎn)擊「查看設(shè)備上所有意圖」,可以查看所有已注冊意圖; 點(diǎn)擊「查看訂票信息」意圖; 點(diǎn)擊「執(zhí)行意圖」; ? App 自動拉起,直接展示訂票信息頁面——成功!

相關(guān)官方鏈接

1. 通過小藝端到端調(diào)測意圖:開發(fā)者測試

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/intents-skill-all-rec-dp-self-validation

2. 意圖上架指導(dǎo):意圖標(biāo)準(zhǔn)協(xié)議上架指導(dǎo) https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/intents-kit-listing-standard-protocol 3. 意圖框架開發(fā)指南:意圖框架開發(fā)指導(dǎo) https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/insight-intent
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 意圖框架是什么 意圖框架能幫開發(fā)者將應(yīng)用/元服務(wù)內(nèi)的業(yè)務(wù)功能,智能分發(fā)到各系統(tǒng)入口,這個過程即智慧分發(fā)。其中系統(tǒng)入...
    fengyongge閱讀 742評論 0 0
  • 嗯哼嗯哼蹦擦擦~~~ 轉(zhuǎn)載自:https://github.com/Tim9Liu9/TimLiu-iOS 目錄 ...
    philiha閱讀 5,265評論 0 6
  • Vue是現(xiàn)在最流行的前端框架之一,而且相對于其他兩個框架React和Angular來說也更加易學(xué),而且它的作者是國...
    dinel閱讀 5,041評論 0 9
  • Vue是現(xiàn)在最流行的前端框架之一,而且相對于其他兩個框架React和Angular來說也更加易學(xué),而且它的作者是國...
    樂百川閱讀 3,545評論 0 9
  • 轉(zhuǎn)載自:https://github.com/Tim9Liu9/TimLiu-iOS 目錄 UI下拉刷新模糊效果A...
    袁俊亮技術(shù)博客閱讀 12,147評論 9 105

友情鏈接更多精彩內(nèi)容