組件啟動(dòng)規(guī)則(FA模型)
啟動(dòng)組件是指一切啟動(dòng)或連接應(yīng)用組件的行為:
- 啟動(dòng)PageAbility、ServiceAbility,如使用startAbility()等相關(guān)接口。
- 連接ServiceAbility、DataAbility,如使用connectAbility()、acquireDataAbilityHelper()等相關(guān)接口。
- 開發(fā)前請(qǐng)熟悉鴻蒙開發(fā)指導(dǎo)文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]點(diǎn)擊或者復(fù)制轉(zhuǎn)到。
為了保證用戶具有更好的使用體驗(yàn),對(duì)以下幾種易影響用戶體驗(yàn)與系統(tǒng)安全的行為做了限制:
- 后臺(tái)應(yīng)用任意彈框,如各種廣告彈窗,影響用戶使用。
- 后臺(tái)應(yīng)用相互喚醒,不合理的占用系統(tǒng)資源,導(dǎo)致系統(tǒng)功耗增加或系統(tǒng)卡頓。
- 前臺(tái)應(yīng)用任意跳轉(zhuǎn)至其他應(yīng)用,如隨意跳轉(zhuǎn)到其他應(yīng)用的支付頁面,存在安全風(fēng)險(xiǎn)。
鑒于此,系統(tǒng)制訂了一套組件啟動(dòng)規(guī)則,主要包括:
- 跨應(yīng)用啟動(dòng)組件,需校驗(yàn)?zāi)繕?biāo)組件Visible
- 只針對(duì)跨應(yīng)用場(chǎng)景。
- 若目標(biāo)組件visible字段配置為false,則需校驗(yàn)
ohos.permission.START_INVISIBLE_ABILITY權(quán)限(該權(quán)限僅系統(tǒng)應(yīng)用可申請(qǐng))。 - [組件visible配置參考]。
- 位于后臺(tái)的應(yīng)用,啟動(dòng)組件需校驗(yàn)BACKGROUND權(quán)限
說明: 基于API 8或更早版本SDK開發(fā)的應(yīng)用在啟動(dòng)ServiceAbility組件或DataAbility組件時(shí)不受此限制的約束。
- 應(yīng)用前后臺(tái)判斷標(biāo)準(zhǔn):若應(yīng)用進(jìn)程獲焦或所屬的UIAbility位于前臺(tái)則判定為前臺(tái)應(yīng)用,否則為后臺(tái)應(yīng)用。
- 需校驗(yàn)
ohos.permission.START_ABILITIES_FROM_BACKGROUND權(quán)限(該權(quán)限僅系統(tǒng)應(yīng)用可申請(qǐng))。 - 跨應(yīng)用啟動(dòng)FA模型的ServiceAbility組件或DataAbility組件,對(duì)端應(yīng)用需配置關(guān)聯(lián)啟動(dòng)
- 只針對(duì)跨應(yīng)用場(chǎng)景。
- 只針對(duì)目標(biāo)組件為ServiceAbility與DataAbility生效。
- 目標(biāo)應(yīng)用的AssociateWakeUp為 true ,其提供的ServiceAbility與DataAbility才允許被其他應(yīng)用訪問。
- 只有系統(tǒng)預(yù)置應(yīng)用才允許配置AssociateWakeUp字段,其余應(yīng)用AssociateWakeUp默認(rèn)為 false 。
說明:
HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿
- 組件啟動(dòng)管控自v3.2 Release版本開始落地。
- 與原本的啟動(dòng)規(guī)則不同,新的組件啟動(dòng)規(guī)則較為嚴(yán)格,開發(fā)者需熟知啟動(dòng)規(guī)則,避免業(yè)務(wù)功能異常。

啟動(dòng)組件的具體校驗(yàn)流程見下文。
同設(shè)備組件啟動(dòng)規(guī)則
設(shè)備內(nèi)啟動(dòng)組件,不同場(chǎng)景下的規(guī)則不同,可分為如下兩種場(chǎng)景:
- 啟動(dòng)PageAbility。
- 啟動(dòng)ServiceAbility或DataAbility。

分布式跨設(shè)備組件啟動(dòng)規(guī)則
跨設(shè)備啟動(dòng)組件,不同場(chǎng)景下的規(guī)則不同,可分為如下兩種場(chǎng)景:
- 啟動(dòng)PageAbility。
- 啟動(dòng)ServiceAbility。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
-
接口
+關(guān)注
關(guān)注
33文章
9603瀏覽量
157676 -
模型
+關(guān)注
關(guān)注
1文章
3831瀏覽量
52287 -
鴻蒙
+關(guān)注
關(guān)注
60文章
3031瀏覽量
46194
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
熱點(diǎn)推薦
KaihongOS操作系統(tǒng)FA模型與Stage模型介紹
的運(yùn)行環(huán)境。FA模型的開發(fā)方式為通過導(dǎo)出匿名對(duì)象、固定入口文件的方式指定應(yīng)用組件。開發(fā)者無法進(jìn)行派生,不利于擴(kuò)展能力。
Stage
發(fā)表于 04-24 07:27
Stage模型啟動(dòng)FA模型PageAbility方法
Stage模型啟動(dòng)FA模型PageAbility
本小節(jié)介紹Stage模型的兩種應(yīng)用組件如何
發(fā)表于 06-04 06:36
如何將一個(gè)FA模型開發(fā)的聲明式范式應(yīng)用切換到Stage模型
模型切換概述
本文介紹如何將一個(gè)FA模型開發(fā)的聲明式范式應(yīng)用切換到Stage模型,您需要完成如下動(dòng)作:
工程切換:新建一個(gè)Stage
發(fā)表于 06-04 06:22
從FA模型切換到Stage模型時(shí):module的切換說明
module的切換
從FA模型切換到Stage模型時(shí),開發(fā)者需要將config.json文件module標(biāo)簽下的配置遷移到module.json5配置文件module標(biāo)簽下,具體差異
發(fā)表于 06-05 08:16
鴻蒙Stage模型和FA模型區(qū)別
筆者這兩個(gè)月一直在折騰分布式應(yīng)用,并且分別基于 API8 的 FA 模型以及 API9 的 Stage 模型進(jìn)行了開發(fā),這兩天總算是基本開發(fā)
鴻蒙Ability Kit(程序框架服務(wù))【組件啟動(dòng)規(guī)則(Stage模型)】
組件啟動(dòng)規(guī)則(Stage模型) 啟動(dòng)組件是指一切啟動(dòng)
鴻蒙開發(fā)組件:FA模型的Context
FA模型下只有一個(gè)Context。Context中的所有功能都是通過方法來提供的,它提供了一些featureAbility中不存在的方法,相當(dāng)于featureAbility的一個(gè)擴(kuò)展和補(bǔ)全。
鴻蒙開發(fā)Ability Kit程序框架服務(wù):FA模型啟動(dòng)Stage模型UIAbility
本文介紹FA模型的三種應(yīng)用組件如何啟動(dòng)Stage模型的UIAbility組件。
鴻蒙開發(fā)Ability Kit程序框架服務(wù):FA模型綁定Stage模型ServiceExtensionAbility
本文介紹FA模型的三種應(yīng)用組件如何綁定Stage模型的ServiceExtensionAbility組件。
鴻蒙開發(fā)Ability Kit程序框架服務(wù):Stage模型啟動(dòng)FA模型PageAbility
本小節(jié)介紹Stage模型的兩種應(yīng)用組件如何啟動(dòng)FA模型的PageAbility組件。
鴻蒙開發(fā)Ability Kit程序框架服務(wù):Stage模型綁定FA模型ServiceAbility
本小節(jié)介紹Stage模型的兩種應(yīng)用組件如何綁定FA模型ServiceAbility組件。
鴻蒙開發(fā):【組件啟動(dòng)規(guī)則(FA模型)】
評(píng)論