組件啟動規(guī)則(Stage模型)
啟動組件是指一切啟動或連接應(yīng)用組件的行為:
- 啟動UIAbility、ServiceExtensionAbility、DataShareExtensionAbility,如使用startAbility()、startServiceExtensionAbility()、startAbilityByCall()等相關(guān)接口。
- 連接ServiceExtensionAbility、DataShareExtensionAbility,如使用connectServiceExtensionAbility()、createDataShareHelper()等相關(guān)接口。
組件啟動總體規(guī)則
為了保證用戶具有更好的使用體驗,對以下幾種易影響用戶體驗與系統(tǒng)安全的行為做了限制:
- 后臺應(yīng)用任意彈框,如各種廣告彈窗,影響用戶使用。
- 后臺應(yīng)用相互喚醒,不合理的占用系統(tǒng)資源,導(dǎo)致系統(tǒng)功耗增加或系統(tǒng)卡頓。
- 前臺應(yīng)用任意跳轉(zhuǎn)至其他應(yīng)用,如隨意跳轉(zhuǎn)到其他應(yīng)用的支付頁面,存在安全風(fēng)險。
鑒于此,制訂了一套組件啟動規(guī)則,主要包括:
- 跨應(yīng)用啟動組件,需校驗?zāi)繕?biāo)組件是否可以被其他應(yīng)用調(diào)用。
若目標(biāo)組件exported字段配置為true,表示可以被其他應(yīng)用調(diào)用;若目標(biāo)組件exported字段配置為false,表示不可以被其他應(yīng)用調(diào)用,還需進一步校驗ohos.permission.START_INVISIBLE_ABILITY權(quán)限(該權(quán)限僅系統(tǒng)應(yīng)用可申請)。組件exported字段說明可參考[abilities標(biāo)簽]。 - 位于后臺的UIAbility應(yīng)用,啟動組件需校驗BACKGROUND權(quán)限
ohos.permission.START_ABILITIES_FROM_BACKGROUND(該權(quán)限僅系統(tǒng)應(yīng)用可申請)。說明:
開發(fā)前請熟悉鴻蒙開發(fā)指導(dǎo)文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]
前后臺應(yīng)用的判斷依據(jù):若應(yīng)用進程獲焦或所屬的UIAbility組件位于前臺則判定為前臺應(yīng)用,否則為后臺應(yīng)用。 - 跨設(shè)備使用startAbilityByCall接口,需校驗分布式權(quán)限
ohos.permission.DISTRIBUTED_DATASYNC。
上述組件啟動規(guī)則自API 9版本開始生效。開發(fā)者需熟知組件啟動規(guī)則,避免業(yè)務(wù)功能異常。啟動組件的具體校驗流程見下文。
同設(shè)備組件啟動規(guī)則
設(shè)備內(nèi)啟動組件,不同場景下的規(guī)則不同,可分為如下三種場景:
- 啟動UIAbility。
- 啟動ServiceExtensionAbility、DataShareExtensionAbility。
- 通過startAbilityByCall接口啟動UIAbility。
HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿

分布式跨設(shè)備組件啟動規(guī)則
跨設(shè)備啟動組件,不同場景下的規(guī)則不同,可分為如下三種場景:
- 啟動UIAbility。
- 啟動ServiceExtensionAbility、DataShareExtensionAbility。
- 通過startAbilityByCall接口啟動UIAbility。

審核編輯 黃宇
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
框架
+關(guān)注
關(guān)注
0文章
404瀏覽量
18426 -
組件
+關(guān)注
關(guān)注
1文章
573瀏覽量
19023 -
鴻蒙
+關(guān)注
關(guān)注
60文章
2963瀏覽量
45911
發(fā)布評論請先 登錄
相關(guān)推薦
熱點推薦
鴻蒙Ability開發(fā)-Stage模型下Ability的創(chuàng)建和使用
對Ability開發(fā)技術(shù)的簡單運用,更多的鴻蒙開發(fā)技術(shù)可以前往我主頁查詢,下面分享鴻蒙開發(fā)4.0技術(shù)分布(略縮圖):
高清完整版技術(shù)學(xué)習(xí)路線圖如下尋找保存(附鴻蒙文檔)
基于
發(fā)表于 01-08 15:34
從FA模型切換到Stage模型時:module的切換說明
見下列表格。
表1 FA模型module標(biāo)簽與Stage模型module標(biāo)簽差異對比
FA標(biāo)簽標(biāo)簽說明對應(yīng)的Stage標(biāo)簽差異說明mainAbility
發(fā)表于 06-05 08:16
HarmonyOS開發(fā)案例:【Stage模型下Ability的創(chuàng)建和使用】
基于Stage模型,對Ability的創(chuàng)建和使用進行講解。首先在課程中我們將帶領(lǐng)大家使用DevEco Studio創(chuàng)建一個Stage模型
鴻蒙Ability Kit(程序框架服務(wù))【Ability內(nèi)頁面間的跳轉(zhuǎn)】
基于Stage模型下的Ability開發(fā),實現(xiàn)Ability內(nèi)頁面間的跳轉(zhuǎn)和數(shù)據(jù)傳遞。
鴻蒙Ability Kit(程序框架服務(wù))【應(yīng)用啟動框架AppStartup】
`AppStartup`提供了一種更加簡單高效的初始化組件的方式,支持異步初始化組件加速應(yīng)用的啟動時間。使用啟動框架應(yīng)用開發(fā)者只需要分別為待
鴻蒙開發(fā)Ability Kit程序框架服務(wù):FA模型與Stage模型應(yīng)用組件互通綜述
FA模型與Stage模型是兩套不同的應(yīng)用模型,他們擁有各自的組件。FA模型提供三種應(yīng)用
鴻蒙開發(fā)Ability Kit程序框架服務(wù):FA模型綁定Stage模型ServiceExtensionAbility
本文介紹FA模型的三種應(yīng)用組件如何綁定Stage模型的ServiceExtensionAbility組件。
鴻蒙開發(fā)Ability Kit程序框架服務(wù):FA模型訪問Stage模型DataShareExtensionAbility
無論FA模型還是Stage模型,數(shù)據(jù)讀寫功能都包含客戶端和服務(wù)端兩部分。
鴻蒙開發(fā)Ability Kit程序框架服務(wù):Stage模型啟動FA模型PageAbility
本小節(jié)介紹Stage模型的兩種應(yīng)用組件如何啟動FA模型的PageAbility組件。
鴻蒙開發(fā)Ability Kit程序框架服務(wù):Stage模型綁定FA模型ServiceAbility
本小節(jié)介紹Stage模型的兩種應(yīng)用組件如何綁定FA模型ServiceAbility組件。
鴻蒙開發(fā)Ability Kit程序框架服務(wù):FA模型切換Stage模型指導(dǎo) module的切換
從FA模型切換到Stage模型時,開發(fā)者需要將config.json文件module標(biāo)簽下的配置遷移到module.json5配置文件module標(biāo)簽下,具體差異見下列表格。
鴻蒙中Stage模型與FA模型詳解
【HarmonyOS 5】鴻蒙中Stage模型與FA模型詳解 ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應(yīng)用
鴻蒙Ability Kit(程序框架服務(wù))【組件啟動規(guī)則(Stage模型)】
評論