組件啟動規(guī)則(FA模型)
啟動組件是指一切啟動或連接應用組件的行為:
- 啟動PageAbility、ServiceAbility,如使用startAbility()等相關接口。
- 連接ServiceAbility、DataAbility,如使用connectAbility()、acquireDataAbilityHelper()等相關接口。
- 開發(fā)前請熟悉鴻蒙開發(fā)指導文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]點擊或者復制轉到。
為了保證用戶具有更好的使用體驗,對以下幾種易影響用戶體驗與系統(tǒng)安全的行為做了限制:
- 后臺應用任意彈框,如各種廣告彈窗,影響用戶使用。
- 后臺應用相互喚醒,不合理的占用系統(tǒng)資源,導致系統(tǒng)功耗增加或系統(tǒng)卡頓。
- 前臺應用任意跳轉至其他應用,如隨意跳轉到其他應用的支付頁面,存在安全風險。
鑒于此,系統(tǒng)制訂了一套組件啟動規(guī)則,主要包括:
- 跨應用啟動組件,需校驗目標組件Visible
- 只針對跨應用場景。
- 若目標組件visible字段配置為false,則需校驗
ohos.permission.START_INVISIBLE_ABILITY
權限(該權限僅系統(tǒng)應用可申請)。 - [組件visible配置參考]。
- 位于后臺的應用,啟動組件需校驗BACKGROUND權限
說明: 基于API 8或更早版本SDK開發(fā)的應用在啟動ServiceAbility組件或DataAbility組件時不受此限制的約束。
- 應用前后臺判斷標準:若應用進程獲焦或所屬的UIAbility位于前臺則判定為前臺應用,否則為后臺應用。
- 需校驗
ohos.permission.START_ABILITIES_FROM_BACKGROUND
權限(該權限僅系統(tǒng)應用可申請)。 - 跨應用啟動FA模型的ServiceAbility組件或DataAbility組件,對端應用需配置關聯(lián)啟動
- 只針對跨應用場景。
- 只針對目標組件為ServiceAbility與DataAbility生效。
- 目標應用的AssociateWakeUp為 true ,其提供的ServiceAbility與DataAbility才允許被其他應用訪問。
- 只有系統(tǒng)預置應用才允許配置AssociateWakeUp字段,其余應用AssociateWakeUp默認為 false 。
說明:
HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿
- 組件啟動管控自v3.2 Release版本開始落地。
- 與原本的啟動規(guī)則不同,新的組件啟動規(guī)則較為嚴格,開發(fā)者需熟知啟動規(guī)則,避免業(yè)務功能異常。
啟動組件的具體校驗流程見下文。
同設備組件啟動規(guī)則
設備內啟動組件,不同場景下的規(guī)則不同,可分為如下兩種場景:
- 啟動PageAbility。
- 啟動ServiceAbility或DataAbility。
分布式跨設備組件啟動規(guī)則
跨設備啟動組件,不同場景下的規(guī)則不同,可分為如下兩種場景:
- 啟動PageAbility。
- 啟動ServiceAbility。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
接口
+關注
關注
33文章
8691瀏覽量
151699 -
模型
+關注
關注
1文章
3298瀏覽量
49065 -
鴻蒙
+關注
關注
57文章
2392瀏覽量
42976
發(fā)布評論請先 登錄
相關推薦
在鴻蒙FA開發(fā)中html如何實現(xiàn)多端適配?
在鴻蒙FA開發(fā)中 html 如何實現(xiàn)多端適配 尤其是 平板 橫屏 豎屏和折疊屏適配,有沒有相關的文檔解釋。
發(fā)表于 06-07 10:20
HarmonyOS/OpenHarmony應用開發(fā)-FA模型綜述
FA模型整體架構****HarmonyOS用戶程序的開發(fā)本質上就是開發(fā)Ability。HarmonyOS系統(tǒng)是通過對Ability調度,結合系統(tǒng)提供的一致性調度契約對Ability進行
發(fā)表于 12-07 10:39
鴻蒙Stage模型和FA模型區(qū)別
筆者這兩個月一直在折騰分布式應用,并且分別基于 API8 的 FA 模型以及 API9 的 Stage 模型進行了開發(fā),這兩天總算是基本開發(fā)
鴻蒙開發(fā)組件:FA模型的Context
FA模型下只有一個Context。Context中的所有功能都是通過方法來提供的,它提供了一些featureAbility中不存在的方法,相當于featureAbility的一個擴展和補全。
鴻蒙開發(fā)Ability Kit程序框架服務:FA模型綁定Stage模型ServiceExtensionAbility
本文介紹FA模型的三種應用組件如何綁定Stage模型的ServiceExtensionAbility組件。
鴻蒙開發(fā)Ability Kit程序框架服務:FA模型訪問Stage模型DataShareExtensionAbility
無論FA模型還是Stage模型,數(shù)據(jù)讀寫功能都包含客戶端和服務端兩部分。
鴻蒙開發(fā)Ability Kit程序框架服務:Stage模型綁定FA模型ServiceAbility
本小節(jié)介紹Stage模型的兩種應用組件如何綁定FA模型ServiceAbility組件。
鴻蒙開發(fā)Ability Kit程序框架服務:FA模型切換Stage模型指導 module的切換
從FA模型切換到Stage模型時,開發(fā)者需要將config.json文件module標簽下的配置遷移到module.json5配置文件module標簽下,具體差異見下列表格。
評論