Skip to content
Menu
(◍ ´꒳` ◍)

  • Blog
  • Front Page
(◍ ´꒳` ◍)

鸿蒙33Page Ability 生命周期

By admin on 2021年9月30日

Page Ability 生命周期 系统管理或用户操作等行为均会引起 Page 实例在其生命周期的不同状态之间进行转换。 Ability 类提供的回调机制能够让 Page 及时感知外界变化,从而正确地应对状态变化(比如释 放资源),这有助于提升应用的性能和稳健性。 3.2.2.1 Page 生命周期回调 Page 生命周期的不同状态转换及其对应的回调,如图 1 所示

onStart() 当系统首次创建 Page 实例时,触发该回调。对于一个 Page 实例,该回调在其生命周期 过程中仅触发一次,Page 在该逻辑后将进入 INACTIVE 状态。开发者必须重写该方法,并在 此配置默认展示的 AbilitySlice。 @Override public void onStart(Intent intent) { super.onStart(intent); super.setMainRoute(FooSlice.class.getName()); }  onActive() Page 会在进入 INACTIVE 状态后来到前台,然后系统调用此回调。Page 在此之后进入 ACTIVE 状态,该状态是应用与用户交互的状态。Page 将保持在此状态,除非某类事件发生导 致 Page 失去焦点,比如用户点击返回键或导航到其他 Page。当此类事件发生时,会触发 Page 回到 INACTIVE 状态,系统将调用 onInactive()回调。此后,Page 可能重新回到 ACTIVE 状态,系统将再次调用 onActive()回调。因此,开发者通常需要成对实现 onActive() 和 onInactive(),并在 onActive()中获取在 onInactive()中被释放的资源。  onInactive() 当 Page 失去焦点时,系统将调用此回调,此后 Page 进入 INACTIVE 状态。开发者可以 在此回调中实现 Page 失去焦点时应表现的恰当行为。  onBackground()

如果 Page 不再对用户可见,系统将调用此回调通知开发者用户进行相应的资源释放,此 后 Page 进入 BACKGROUND 状态。开发者应该在此回调中释放 Page 不可见时无用的资源, 或在此回调中执行较为耗时的状态保存操作。  onForeground() 处于 BACKGROUND 状态的 Page 仍然驻留在内存中,当重新回到前台时(比如用户重新 导航到此 Page),系统将先调用 onForeground()回调通知开发者,而后 Page 的生命周期状 态回到 INACTIVE 状态。开发者应当在此回调中重新申请在 onBackground()中释放的资源, 最后 Page 的生命周期状态进一步回到 ACTIVE 状态,系统将通过 onActive()回调通知开发者 用户。

onStop() 系统将要销毁 Page 时,将会触发此回调函数,通知用户进行系统资源的释放。销毁 Page 的可能原因包括以下几个方面: – 用户通过系统管理能力关闭指定 Page,例如使用任务管理器关闭 Page。 – 用户行为触发 Page 的 terminateAbility()方法调用,例如使用应用的退出功能。 – 配置变更导致系统暂时销毁 Page 并重建。 – 系统出于资源管理目的,自动触发对处于 BACKGROUND 状态 Page 的销毁。

Category: 鸿蒙

文章导航

鸿蒙32AbilitySlice 路由配置
鸿蒙34 同一 Page 内导航

Related Posts

鸿蒙36跨设备迁移

10月 3, 2021
Read More

承认平庸-iptables高级-state模块-21

3月 3, 2023
Read More

zookeeper

8月 12, 2023
Read More

发表回复 取消回复

您的电子邮箱地址不会被公开。 必填项已用*标注

近期文章

  • 实施002
  • 实施SQL001
  • 泛微oa001-字段
  • 硬件前端-海康威视摄像头
  • 使用Docker搭建Weblogic服务001

近期评论

    归档

    • 2023年10月
    • 2023年9月
    • 2023年8月
    • 2023年5月
    • 2023年4月
    • 2023年3月
    • 2021年11月
    • 2021年10月
    • 2021年9月
    • 2021年8月
    • 2021年5月

    分类

    • C
    • docker
    • iptable
    • ISIS
    • java
    • k8s
    • liunx
    • OpenCV py
    • ospf
    • solr
    • zabbix
    • 劳动法
    • 周杰伦
    • 格林法则
    • 等保
    • 鸿蒙

    其他操作

    • 登录
    • 条目feed
    • 评论feed
    • WordPress.org
    ©2025 (◍ ´꒳` ◍) | WordPress Theme by Superb WordPress Themes