Lifecycle @OnLifecycleEvent() 已弃用,您应该使用 LifecycleEventObserver 或 DefaultLifecycleObserver [重复]

2023-11-23

答案在底部

我认为这对你有用


- 生命周期事件观察者

Firstly

你应该实现这个:

dependencies {
    implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
}

Secondly

你应该这样写:

class App : Application() {
    override fun onCreate() {
        super.onCreate()

        ProcessLifecycleOwner.get().lifecycle.addObserver(lifecycleEventObserver)

    }

Thirdly

你应该这样写:
这里我只实现了两个Lifecycle Event,当你需要其他Lifecycle Event时,你应该实现它们

    var lifecycleEventObserver = LifecycleEventObserver { _, event ->
        when (event) {
            Lifecycle.Event.ON_STOP -> {
                //your code here
            }
            Lifecycle.Event.ON_START -> {
                //your code here
            }
            else -> {}
        }
    }

- 默认生命周期观察者

Firstly

你应该实现这个:

dependencies {
    implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
}

Secondly

你应该这样写:

class App : Application() {
    override fun onCreate() {
        super.onCreate()

        ProcessLifecycleOwner.get().lifecycle.addObserver(defaultLifecycleObserver)

    }

Thirdly

你应该这样写:
这里我只实现了两个Lifecycle Event,当你需要其他Lifecycle Event时,你应该实现它们

    var defaultLifecycleObserver = object : DefaultLifecycleObserver {

        override fun onStart(owner: LifecycleOwner) {
            super.onStart(owner)
            //your code here
        }

        override fun onStop(owner: LifecycleOwner) {
            super.onStop(owner)
            //your code here
        }
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Lifecycle @OnLifecycleEvent() 已弃用,您应该使用 LifecycleEventObserver 或 DefaultLifecycleObserver [重复] 的相关文章

随机推荐