PageAbility的生命周期
PageAbility生命周期是PageAbility被調度到INACTIVE、ACTIVE、BACKGROUND等各個狀態(tài)的統(tǒng)稱。PageAbility生命周期流轉及狀態(tài)說明見如下圖1、表1所示。
圖1 PageAbility生命周期流轉

表1 PageAbility生命周期狀態(tài)說明
| 生命周期狀態(tài) | 生命周期狀態(tài)說明 |
|---|---|
| UNINITIALIZED | 未初始狀態(tài),為臨時狀態(tài),PageAbility被創(chuàng)建后會由UNINITIALIZED狀態(tài)進入INITIAL狀態(tài)。 |
| INITIAL | 初始化狀態(tài),也表示停止狀態(tài),表示當前PageAbility未運行,PageAbility被啟動后由INITIAL態(tài)進入INACTIVE狀態(tài)。 |
| INACTIVE | 失去焦點狀態(tài),表示當前窗口已顯示但是無焦點狀態(tài)。 |
| ACTIVE | 前臺激活狀態(tài),表示當前窗口已顯示,并獲取焦點。 |
| BACKGROUND | 后臺狀態(tài),表示當前PageAbility退到后臺,PageAbility在被銷毀后由BACKGROUND狀態(tài)進入INITIAL狀態(tài),或者重新被激活后由BACKGROUND狀態(tài)進入ACTIVE狀態(tài)。 |
應用開發(fā)者可以在app.js/app.ets中實現(xiàn)生命周期相關回調函數(shù),PageAbility生命周期相關回調函數(shù)見下表。
表2 PageAbility生命周期回調接口說明
| 接口名 | 接口描述 |
|---|---|
| onCreate() | Ability第一次啟動創(chuàng)建Ability時調用onCreate方法,開發(fā)者可以在該方法里做一些應用初始化工作。 |
| onDestroy() | 應用退出,銷毀Ability對象前調用onDestroy方法,開發(fā)者可以在該方法里做一些回收資源、清空緩存等應用退出前的準備工作。 |
| onActive() | Ability切換到前臺,并且已經(jīng)獲取焦點時調用onActive方法。 |
| onInactive() | Ability失去焦點時調用onInactive方法,Ability在進入后臺狀態(tài)時會先失去焦點,再進入后臺。 |
| onShow() | Ability由后臺不可見狀態(tài)切換到前臺可見狀態(tài)調用onShow方法,此時用戶在屏幕可以看到該Ability。 |
| onHide() | Ability由前臺切換到后臺不可見狀態(tài)時調用onHide方法,此時用戶在屏幕看不到該Ability。 |
PageAbility生命周期回調與生命周期狀態(tài)的關系如下圖所示。
圖2 PageAbility生命周期回調與生命周期狀態(tài)的關系


說明:
開發(fā)前請熟悉鴻蒙開發(fā)指導文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]
- PageAbility的生命周期回調均為同步接口。
- 目前app.js環(huán)境中僅支持onCreate和onDestroy回調,app.ets環(huán)境支持全量生命周期回調。
審核編輯 黃宇
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。
舉報投訴
-
接口
+關注
關注
33文章
9490瀏覽量
156574 -
鴻蒙
+關注
關注
60文章
2923瀏覽量
45567
發(fā)布評論請先 登錄
相關推薦
熱點推薦
基于Rust語言中的生命周期
Rust是一門系統(tǒng)級編程語言具備高效、安和并發(fā)等特,而生命周期是這門語言中比較重要的概念之一。在這篇教程中,我們會了解什么是命周期、為什么需要生命周期、如何使用生命周期,同時我們依然會
ServiceAbility的生命周期介紹
ServiceAbility的生命周期
開發(fā)者可以根據(jù)業(yè)務場景重寫生命周期相關接口。ServiceAbility生命周期接口說明見下表。
表1 ServiceAbility
發(fā)表于 05-28 08:22
AutoScaling 生命周期掛鉤功能
摘要: AutoScaling 伸縮組實例管理功能全面升級,新上線生命周期掛鉤(LifecycleHook)功能,方便用戶更加靈活地管理伸縮組內實例。使用生命周期掛鉤可以在伸縮組發(fā)生伸縮活動時將伸縮
發(fā)表于 06-27 17:13
HarmonyOS應用開發(fā)-PageAbility生命周期介
pageAbility的生命周期如下圖所示:在代碼中通過調用下列方法實現(xiàn)生命周期操作:onShow() :Ability由后臺不可見狀態(tài)切換到前臺可見狀態(tài)調用onShow方法,此時用戶在屏幕可以看到
發(fā)表于 10-17 11:11
HarmonyOS/OpenHarmony應用開發(fā)-PageAbility開發(fā)體驗
生命周期流轉如下圖:!featureAbility接口說明featureAbility,即FA。PageAbility需要用到的featureAbility模塊的接口如下:開發(fā)體驗:示例效果:示例代碼
發(fā)表于 12-08 11:03
什么是DevOps?DevOps的優(yōu)勢以及生命周期
在大多數(shù)情況下,軟件應用程序開發(fā)由于其規(guī)范性和復雜性而變得很耗時。為了在短時間內交付高質量應用程序,軟件開發(fā)人員正在遵循一套通用的實踐,稱為DevOps生命周期。那么,DevOps在軟件應用程序
鴻蒙開發(fā)組件:DataAbility的生命周期
應用開發(fā)者可以根據(jù)業(yè)務場景實現(xiàn)data.js/data.ets中的生命周期相關接口。DataAbility生命周期接口說明見下表。
什么是PLM產(chǎn)品生命周期管理系統(tǒng)?
在當今競爭激烈的制造業(yè)環(huán)境中,企業(yè)不僅要關注產(chǎn)品的設計和生產(chǎn),還需要對產(chǎn)品的整個生命周期進行全面管理。這包括了從產(chǎn)品概念構思、設計開發(fā)、生產(chǎn)制造、銷售分發(fā),到最終報廢處理的每一個環(huán)節(jié)。為了高效、系統(tǒng)
【HarmonyOS 5】鴻蒙頁面和組件生命周期函數(shù)
【HarmonyOS 5】鴻蒙頁面和組件生命周期函數(shù) ##鴻蒙開發(fā)能力 ##HarmonyOS SDK應用服務##鴻蒙金融類應用 (金融理財
鴻蒙開發(fā):【PageAbility的生命周期】
評論