鸿蒙学习-PageAbility的生命周期

PageAbility生命周期是PageAbility被调度到INACTIVE、ACTIVE、BACKGROUND等各个状态的统称。PageAbility生命周期流转及状态说明如下图所示:

 PageAbility生命周期状态说明:

生命周期状态生命周期状态说明
UNINITIALIZED未初始化状态,为临时状态,PageAbility被创建后会由UNINITIALIZED状态进入INITIAL状态
INITIAL初始化状态,也表示停止状态,表示当前PageAbility未运行,PageAbility被启动后由INITIAL态进入INACTIVE状态。
INACTIVE失去焦点状态,表示当前窗口已显示但是无焦点状态。
ACTIVE前台激活状态,表示当前窗口已显示,并获取焦点。
BACKGROUND后台状态,表示当前PageAbility退出到后台,PageAbility在被销毁后由BACKGROUND状态进入INITIAL状态,或者重新被激活后由BACKGROUND状态进入ACTIVE状态

应用开发者可以在app.js/app.ets中重写生命周期相关回调函数,PageAbility生命周期相关回调函数:

接口名接口描述
onCreate()Ability第一次启动创建Ability时调用onCreate方法,开发者可以在该方法里做一些应用初始化工作。
onDestroy()应用退出,销毁Ability对象前调用onDestroy方法,开发者可以在该方法里做一些回收资源、清空缓存等应用退出前的准备工作。
onActive()Ability切换到前台,并且已经获取焦点时调用onActive方法。
onInactive()Ability失去焦点时调用onInactive方法,Ability在进入后台状态时会先失去焦点,再进入后台。
onShow()Ability由后台不可见状态切换到前台可见状态调用onShow方法,此时用户在屏幕可以看到该Ability
onHide()Ability由前台切换到后台不可见状态时调用onHide方法,此时用户在屏幕上看不到该Ability。

PageAbility生命周期回调与生命周期状态的关系:

说明:

1、PageAbility的生命周期回调均为同步接口。

2、目前app.js环境中仅支持onCreate和onDestroy回调,app.ets环境支持全量生命周期回调。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值