Stage模型開發(fā)概述
基本概念
下圖展示了Stage模型中的基本概念。
圖1 Stage模型概念圖
- [AbilityStage]
每個Entry類型或者Feature類型的HAP在運行期都有一個AbilityStage類實例,當(dāng)HAP中的代碼首次被加載到進程中的時候,系統(tǒng)會先創(chuàng)建AbilityStage實例。 - [UIAbility組件]和[ExtensionAbility組件]
Stage模型提供UIAbility和ExtensionAbility兩種類型的組件,這兩種組件都有具體的類承載,支持面向?qū)ο蟮拈_發(fā)方式。
開發(fā)前請熟悉鴻蒙開發(fā)指導(dǎo)文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]
- UIAbility組件是一種包含UI的應(yīng)用組件,主要用于和用戶交互。例如,圖庫類應(yīng)用可以在UIAbility組件中展示圖片瀑布流,在用戶選擇某個圖片后,在新的頁面中展示圖片的詳細內(nèi)容。同時用戶可以通過返回鍵返回到瀑布流頁面。UIAbility組件的生命周期只包含創(chuàng)建/銷毀/前臺/后臺等狀態(tài),與顯示相關(guān)的狀態(tài)通過WindowStage的事件暴露給開發(fā)者。
- ExtensionAbility組件是一種面向特定場景的應(yīng)用組件。開發(fā)者并不直接從ExtensionAbility組件派生,而是需要使用ExtensionAbility組件的派生類。目前ExtensionAbility組件有用于卡片場景的FormExtensionAbility,用于輸入法場景的InputMethodExtensionAbility,用于閑時任務(wù)場景的WorkSchedulerExtensionAbility等多種派生類,這些派生類都是基于特定場景提供的。例如,用戶在桌面創(chuàng)建應(yīng)用的卡片,需要應(yīng)用開發(fā)者從FormExtensionAbility派生,實現(xiàn)其中的回調(diào)函數(shù),并在配置文件中配置該能力。ExtensionAbility組件的派生類實例由用戶觸發(fā)創(chuàng)建,并由系統(tǒng)管理生命周期。在Stage模型上,三方應(yīng)用開發(fā)者不能開發(fā)自定義服務(wù),而需要根據(jù)自身的業(yè)務(wù)場景通過ExtensionAbility組件的派生類來實現(xiàn)。
- [WindowStage]
每個UIAbility實例都會與一個WindowStage類實例綁定,該類起到了應(yīng)用進程內(nèi)窗口管理器的作用。它包含一個主窗口。也就是說UIAbility實例通過WindowStage持有了一個主窗口,該主窗口為ArkUI提供了繪制區(qū)域。 - [Context]
在Stage模型上,Context及其派生類向開發(fā)者提供在運行期可以調(diào)用的各種資源和能力。UIAbility組件和各種ExtensionAbility組件的派生類都有各自不同的Context類,他們都繼承自基類Context,但是各自又根據(jù)所屬組件,提供不同的能力。
開發(fā)流程
基于Stage模型開發(fā)應(yīng)用時,在應(yīng)用模型部分,涉及如下開發(fā)過程。
表1 Stage模型開發(fā)流程

| 任務(wù) | 簡介 | 相關(guān)指導(dǎo)HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿 |
|---|---|---|
| 應(yīng)用組件開發(fā) | 本章節(jié)介紹了如何使用Stage模型的UIAbility組件和ExtensionAbility組件開發(fā)應(yīng)用。 | - [應(yīng)用/組件級配置] - [UIAbility組件] - [ExtensionAbility組件] - [AbilityStage組件容器] - [應(yīng)用上下文Context] - [組件啟動規(guī)則] |
| 了解進程模型 | 本章節(jié)介紹了Stage模型的進程模型以及幾種常用的進程間通信方式。 | [進程模型概述] |
| 了解線程模型 | 本章節(jié)介紹了Stage模型的線程模型以及幾種常用的線程間通信方式。 | [線程模型概述] |
| 應(yīng)用配置文件 | 本章節(jié)介紹Stage模型中應(yīng)用配置文件的開發(fā)要求。 | [Stage模型應(yīng)用配置文件] |
審核編輯 黃宇
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
模型
+關(guān)注
關(guān)注
1文章
3773瀏覽量
52174 -
鴻蒙
+關(guān)注
關(guān)注
60文章
2983瀏覽量
46045
發(fā)布評論請先 登錄
相關(guān)推薦
熱點推薦
鴻蒙開發(fā)API9 到 API12,有哪些不同
? ##HarmonyOS 應(yīng)用開發(fā)##
雖然API9已經(jīng)屬于過時了,但是現(xiàn)在很多學(xué)校里教的還是基于API9的鴻蒙開發(fā),當(dāng)學(xué)生需要在畢業(yè)設(shè)計中使用API12進行開發(fā)時,還是需要先掌握一
發(fā)表于 06-29 22:47
ArkUI-X通過Stage模型開發(fā)Android端應(yīng)用指南(一)
簡介
本文介紹將ArkUI框架擴展到Android平臺所需要的必要的類及其使用說明,開發(fā)者基于OpenHarmony,可復(fù)用大部分的應(yīng)用代碼(生命周期等)并可以部署到Android平臺,降低跨平臺
發(fā)表于 06-24 22:16
FA模型的DataAbility的切換介紹
): voidonCreate?(want: Want, callback:
AsyncCallback): void兩者調(diào)用時機一致,函數(shù)名即入?yún)⒍疾灰粯樱?b class='flag-5'>Stage模型下增加了入?yún)ant以便開發(fā)者在創(chuàng)建
發(fā)表于 06-06 08:10
FA模型卡片和Stage模型卡片切換
卡片切換
卡片切換主要包含如下三部分:
卡片頁面布局:FA模型卡片和Stage模型卡片的布局都采用類web范式開發(fā)可以直接復(fù)用。
卡片配置文件:FA
發(fā)表于 06-06 08:10
從FA模型切換到Stage模型時:module的切換說明
module的切換
從FA模型切換到Stage模型時,開發(fā)者需要將config.json文件module標(biāo)簽下的配置遷移到module.json5配置文件module標(biāo)簽下,具體差異
發(fā)表于 06-05 08:16
FA模型的ServiceAbility的切換介紹
兩者調(diào)用時機一致,Stage模型下增加了入?yún)ant以便開發(fā)者在創(chuàng)建時獲取參數(shù)。
onCommand(want: Want, startId: number): voidonRequest(want
發(fā)表于 06-05 07:24
FA模型綁定Stage模型ServiceExtensionAbility介紹
FA模型綁定Stage模型ServiceExtensionAbility
本文介紹FA模型的三種應(yīng)用組件如何綁定Stage
發(fā)表于 06-04 07:55
FA模型訪問Stage模型DataShareExtensionAbility說明
FA模型訪問Stage模型DataShareExtensionAbility
概述
無論FA模型還是
發(fā)表于 06-04 07:53
Stage模型綁定FA模型ServiceAbility的方法
Stage模型綁定FA模型ServiceAbility
本小節(jié)介紹Stage模型的兩種應(yīng)用組件如何綁定FA
發(fā)表于 06-04 06:54
Stage模型啟動FA模型PageAbility方法
Stage模型啟動FA模型PageAbility
本小節(jié)介紹Stage模型的兩種應(yīng)用組件如何啟動FA模
發(fā)表于 06-04 06:36
如何將一個FA模型開發(fā)的聲明式范式應(yīng)用切換到Stage模型
模型切換概述
本文介紹如何將一個FA模型開發(fā)的聲明式范式應(yīng)用切換到Stage模型,您需要完成如
發(fā)表于 06-04 06:22
KaihongOS操作系統(tǒng)FA模型與Stage模型介紹
FA模型與Stage模型介紹
KaihongOS操作系統(tǒng)中,F(xiàn)A模型(Feature Ability)和Stage
發(fā)表于 04-24 07:27
DevEco Studio AI輔助開發(fā)工具兩大升級功能 鴻蒙應(yīng)用開發(fā)效率再提升
數(shù)據(jù)支撐時提供相關(guān)的延伸指導(dǎo)。這種設(shè)計既保障了鴻蒙技術(shù)支持的專注度,又通過善意引導(dǎo)幫助用戶建立合理預(yù)期,最終實現(xiàn)開發(fā)者體驗與專業(yè)深度的雙提升。
隨著DeepSeek模型使用RAG能力增強之后
發(fā)表于 04-18 14:43
鴻蒙應(yīng)用模型:【Stage模型開發(fā)】概述
評論