阅读(1005) (13)

鸿蒙OS Ability LifecycleObserver

2020-09-21 17:27:06 更新

观察并响应生命周期更改。

Lifecycle将生命周期事件调度到已注册的LifecycleObserver。然后,LifecycleObserver为AbilityAbilitySlice实现生命周期回调。这使您的应用程序具有解耦的架构,其中AbilityAbilitySlice仅承担单个责任。

您应该继承LifecycleObserver类,根据需要重写生命周期回调方法,然后调用Lifecycle#addObserver(ILifecycleObserver)向Lifecycle注册LifecycleObserver。LifecycleObserver中的回调方法提供的功能与AbilityAbilitySlice的提供的功能相同,但是它们的调用顺序不同。系统首先在AbilityAbilitySlice中调用,然后在LifecycleObserver中调用。当您的应用程序很复杂时,建议您将LifecycleObserver用于AbilityAbilitySlice的生命周期回调。

以来:

1个

也可以看看:

LifecycleILifecycleObserverLifecycleStateObserver

构造器摘要

建设者 描述
LifecycleObserver()

方法总结

修饰符和类型 方法 描述
void onActive() 响应ON_ACTIVE事件而回调。
void onBackground() 回调以响应ON_BACKGROUND事件。
void onForeground(Intent意图) 响应ON_FOREGROUND事件而被回调,其中intent参数中包含有关能力或能力切片返回到ACTIVE状态的信息。
void onInactive() 回调以响应ON_INACTIVE事件。
void onStart(Intentintent) 响应ON_START事件而回调,其中启动信息包含在intent参数中。
void onStop() 响应ON_STOP事件而回调。

从类 java.lang 继承的方法。object
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

构造器详细信息

生命周期观察者

公共LifecycleObserver()

方法细节

onStart

public void onStart(Intent意图)

响应ON_START事件而回调,其中启动信息包含在intent参数中。

此方法将初始化AbilityAbilitySlice,并且在整个生命周期中仅被调用一次。建议您使用此方法实现一些初始化逻辑,例如,可以初始化计时器或定义一些全局对象。

参数:

参数名称 参数说明
意图 指示启动信息。

也可以看看:

Ability.onStart(Intent)AbilitySlice.onStart(Intent)

onInactive

public void onInactive()

回调以响应ON_INACTIVE事件。

接收到ON_INACTIVE事件时,能力或能力切片处于INACTIVE状态。不活动是状态变为活动或背景之前的中间状态。在这种状态下,UI可能是可见的,但不是交互式的。建议您不要使用此方法来调用复杂的服务逻辑。

也可以看看:

Ability.onInactive()AbilitySlice.onInactive()

onActive

公共无效onActive()

响应ON_ACTIVE事件而回调。

接收到ON_ACTIVE事件时,能力或能力切片位于前台并且是交互式的。

也可以看看:

Ability.onActive()AbilitySlice.onActive()

onBackground

onBackground公共无效

回调以响应ON_BACKGROUND事件。

接收到ON_BACKGROUND事件时,该能力或能力切片是不可见的。建议您暂停与此功能或功能切片相关的线程,并清除资源以获取更多系统内存。

也可以看看:

Ability.onBackground()AbilitySlice.onBackground()

onForeground

onForeground上的公共无效空间(Intent intent)

响应ON_FOREGROUND事件而被回调,其中intent参数中包含有关能力或能力切片返回到ACTIVE状态的信息。

接收到ON_FOREGROUND事件时,能力或能力切片将返回到前台。您可以使用此方法来实现重新初始化或通过使用intent参数来调整UI显示。

参数:

参数名称 参数说明
意图 指示能力或能力切片返回到活动状态的信息。

也可以看看:

Ability.onForeground(Intent)AbilitySlice.onForeground(Intent)

onStop

onStop公共无效()

响应ON_STOP事件而回调。

当能力或能力切片的生命周期被破坏时,将调用此方法。您可以使用此方法回收资源。

也可以看看:

Ability.onStop()AbilitySlice.onStop()