精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

鴻蒙Ability Kit(程序框架服務)【AbilityStage組件容器】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-06-05 14:15 ? 次閱讀

AbilityStage組件容器

AbilityStage是一個[Module]級別的組件容器,應用的HAP在首次加載時會創建一個AbilityStage實例,可以對該Module進行初始化等操作。

AbilityStage與Module一一對應,即一個Module擁有一個AbilityStage。

DevEco Studio默認工程中未自動生成AbilityStage,如需要使用AbilityStage的能力,可以手動新建一個AbilityStage文件,具體步驟如下。

  1. 在工程Module對應的ets目錄下,右鍵選擇“New > Directory”,新建一個目錄并命名為myabilitystage。

  2. 在myabilitystage目錄,右鍵選擇“New > ArkTS File”,新建一個文件并命名為MyAbilityStage.ts。

  3. 打開MyAbilityStage.ts文件,導入AbilityStage的依賴包,自定義類繼承AbilityStage并加上需要的生命周期回調,示例中增加了一個onCreate()生命周期回調。

    import AbilityStage from '@ohos.app.ability.AbilityStage';
    import type Want from '@ohos.app.ability.Want';
    
    export default class MyAbilityStage extends AbilityStage {
      onCreate(): void {
        // 應用的HAP在首次加載的時,為該Module初始化操作
      }
      onAcceptWant(want: Want): string {
        // 僅specified模式下觸發
        return 'MyAbilityStage';
      }
    }
    
    `HarmonyOSOpenHarmony鴻蒙文檔籽料:mau123789是v直接拿`
    

    鴻蒙文檔.png

  4. 在[module.json5配置文件]中,通過配置 srcEntry 參數來指定模塊對應的代碼路徑,以作為HAP加載的入口。

{
  "module": {
    "name": "entry",
    "type": "entry",
    "srcEntry": "./ets/myabilitystage/MyAbilityStage.ts",
    ...
  }
}

[AbilityStage]擁有[onCreate()]生命周期回調和[onAcceptWant()]、[onConfigurationUpdated()]、[onMemoryLevel()]事件回調。

  • [onCreate()]生命周期回調:在開始加載對應Module的第一個UIAbility實例之前會先創建AbilityStage,并在AbilityStage創建完成之后執行其onCreate()生命周期回調。AbilityStage模塊提供在Module加載的時候,通知開發者,可以在此進行該Module的初始化(如資源預加載,線程創建等)能力。
  • [onAcceptWant()]事件回調:UIAbility[指定實例模式(specified)]啟動時候觸發的事件回調,具體使用請參見[UIAbility啟動模式綜述]。
  • [onConfigurationUpdated()]事件回調:當系統全局配置發生變更時觸發的事件,系統語言、深淺色等,配置項目前均定義在[Configuration]類中。
  • [onMemoryLevel()]事件回調:當系統調整內存時觸發的事件。

應用被切換到后臺時,系統會將在后臺的應用保留在緩存中。即使應用處于緩存中,也會影響系統整體性能。當系統資源不足時,系統會通過多種方式從應用中回收內存,必要時會完全停止應用,從而釋放內存用于執行關鍵任務。為了進一步保持系統內存的平衡,避免系統停止用戶的應用進程,可以在AbilityStage中的onMemoryLevel()生命周期回調中訂閱系統內存的變化情況,釋放不必要的資源。

import AbilityStage from '@ohos.app.ability.AbilityStage';
import type AbilityConstant from '@ohos.app.ability.AbilityConstant';

export default class MyAbilityStage extends AbilityStage {
  onMemoryLevel(level: AbilityConstant.MemoryLevel): void {
    // 根據系統可用內存的變化情況,釋放不必要的內存
  }
}

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 框架
    +關注

    關注

    0

    文章

    399

    瀏覽量

    17435
  • 組件
    +關注

    關注

    1

    文章

    505

    瀏覽量

    17805
  • 鴻蒙
    +關注

    關注

    57

    文章

    2313

    瀏覽量

    42747
收藏 人收藏

    評論

    相關推薦

    鴻蒙Ability Kit程序框架服務)【ServiceExtensionAbility】

    [ServiceExtensionAbility]是SERVICE類型的ExtensionAbility組件,提供后臺服務能力,其內部持有了一個[ServiceExtensionContext],通過[ServiceExtensionContext]提供了豐富的接口供外部
    的頭像 發表于 06-04 14:50 ?1139次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【ServiceExtensionAbility】

    鴻蒙Ability Kit程序框架服務)【UIExtensionAbility】

    [UIExtensionAbility]是UI類型的ExtensionAbility組件,需要與[UIExtensionComponent]一起配合使用,開發者可以在UIAbility的頁面中通過
    的頭像 發表于 06-05 09:19 ?1323次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【UIExtensionAbility】

    HarmonyOS/OpenHarmony(Stage模型)卡片開發AbilityStage組件容器

    AbilityStage是一個Module級別的組件容器,應用的HAP在首次加載時會創建一個AbilityStage實例,可以對該Module進行初始化等操作。
    發表于 08-23 16:45

    鴻蒙應用模型:【Ability Kit】簡介

    Ability Kit程序框架服務)提供了應用程序開發和運行的應用模型,是系統為開發者提供的應
    的頭像 發表于 05-29 14:41 ?590次閱讀
    <b class='flag-5'>鴻蒙</b>應用模型:【<b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>】簡介

    鴻蒙Ability Kit程序框架服務)【UIAbility組件概述】

    UIAbility組件是一種包含UI的應用組件,主要用于和用戶交互。
    的頭像 發表于 05-30 20:17 ?404次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【UIAbility<b class='flag-5'>組件</b>概述】

    鴻蒙Ability Kit程序框架服務)【UIAbility組件啟動模式】

    UIAbility的啟動模式是指UIAbility實例在啟動時的不同呈現狀態。針對不同的業務場景,系統提供了三種啟動模式:
    的頭像 發表于 06-06 11:05 ?769次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【UIAbility<b class='flag-5'>組件</b>啟動模式】

    鴻蒙Ability Kit程序框架服務)【UIAbility組件基本用法】

    UIAbility組件的基本用法包括:指定UIAbility的啟動頁面以及獲取UIAbility的上下文[UIAbilityContext]。
    的頭像 發表于 06-06 11:02 ?427次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【UIAbility<b class='flag-5'>組件</b>基本用法】

    鴻蒙Ability Kit程序框架服務)【Ability內頁面間的跳轉】

    基于Stage模型下的Ability開發,實現Ability內頁面間的跳轉和數據傳遞。
    的頭像 發表于 06-03 20:43 ?276次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【<b class='flag-5'>Ability</b>內頁面間的跳轉】

    鴻蒙Ability Kit程序框架服務)【ExtensionAbility組件

    ExtensionAbility組件是基于特定場景(例如服務卡片、輸入法等)提供的應用組件,以便滿足更多的使用場景。
    的頭像 發表于 06-04 15:54 ?489次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【ExtensionAbility<b class='flag-5'>組件</b>】

    鴻蒙Ability Kit程序框架服務)【Ability與ServiceExtensionAbility通信】

    本示例展示通過[IDL的方式]和?[@ohos.rpc]?等接口實現了Ability與ServiceExtensionAbility之間的通信。
    的頭像 發表于 06-05 09:28 ?455次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【<b class='flag-5'>Ability</b>與ServiceExtensionAbility通信】

    鴻蒙Ability Kit程序框架服務)【Want概述】

    [Want]是一種對象,用于在應用組件之間傳遞信息。
    的頭像 發表于 06-06 09:16 ?483次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【Want概述】

    鴻蒙Ability Kit程序框架服務)【組件啟動規則(Stage模型)】

    組件啟動規則(Stage模型) 啟動組件是指一切啟動或連接應用組件的行為: 啟動UIAbility、ServiceExtensionAbility、DataShareExtensionAbility
    的頭像 發表于 06-10 18:47 ?831次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b>(<b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>)【<b class='flag-5'>組件</b>啟動規則(Stage模型)】

    鴻蒙Ability Kit程序框架服務)【應用啟動框架AppStartup】

    `AppStartup`提供了一種更加簡單高效的初始化組件的方式,支持異步初始化組件加速應用的啟動時間。使用啟動框架應用開發者只需要分別為待初始化的組件實現`AppStartup`提供
    的頭像 發表于 06-10 18:38 ?667次閱讀

    鴻蒙開發Ability Kit程序框架服務:任務管理

    AbilityRecord:系統服務側管理一個UIAbility實例的最小單元,對應一個應用側的UIAbility組件實例。系統服務側管理UIAbility實例數量上限為512個。
    的頭像 發表于 06-24 14:46 ?404次閱讀
    <b class='flag-5'>鴻蒙</b>開發<b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>:任務管理

    鴻蒙開發Ability Kit程序框架服務:FA模型與Stage模型應用組件互通綜述

    FA模型與Stage模型是兩套不同的應用模型,他們擁有各自的組件。FA模型提供三種應用組件,分別是PageAbility、ServiceAbility和DataAbility。Stage模型提供了兩種應用組件,分別是UIAbil
    的頭像 發表于 06-24 16:43 ?470次閱讀
    <b class='flag-5'>鴻蒙</b>開發<b class='flag-5'>Ability</b> <b class='flag-5'>Kit</b><b class='flag-5'>程序</b><b class='flag-5'>框架</b><b class='flag-5'>服務</b>:FA模型與Stage模型應用<b class='flag-5'>組件</b>互通綜述