Android ProcessLifecycleOwner

Android ProcessLifecycleOwner

  • 针对整个应用程序生命周期的监听,和activity数量没有关系
  • onCreate只会调用一次,onDestory不会调用

实现 DefaultLifecycleObserver

kotlin 复制代码
class ApplicationObserver : DefaultLifecycleObserver {

    companion object{
        const val TAG ="ApplicationObserver"
    }
    
    override fun onCreate(owner: LifecycleOwner) {
        Log.i(TAG,"onCreate")
    }

    override fun onStart(owner: LifecycleOwner) {
        Log.i(TAG,"onStart")
    }

    override fun onResume(owner: LifecycleOwner) {
        Log.i(TAG,"onResume")
    }

    override fun onPause(owner: LifecycleOwner) {
        Log.i(TAG,"onPause")
    }

    override fun onStop(owner: LifecycleOwner) {
        Log.i(TAG,"onStop")
    }

    override fun onDestroy(owner: LifecycleOwner) {
        Log.i(TAG,"onDestroy")
    }
}

在Application中添加

kotlin 复制代码
class MyApplication : Application() {

    override fun onCreate() {
        super.onCreate()
        ProcessLifecycleOwner.get().lifecycle
            .addObserver(ApplicationObserver())
    }
}

通过日志观察,在应用启动会调用 onCreate 方法,退出后台或者kill进程,不会调用 onDestory 方法

相关推荐
b20772139 分钟前
Flutter for OpenHarmony 身体健康状况记录App实战 - 个人中心实现
android·java·python·flutter·harmonyos
天才少年曾牛2 小时前
【无标题】
android·frameworks
2601_949575862 小时前
Flutter for OpenHarmony二手物品置换App实战 - 自定义组件实现
android·javascript·flutter
、BeYourself2 小时前
动作栏 (ActionBar) 与工具栏 (Toolbar) 的基本使用
android·android-studio
zfoo-framework2 小时前
kotlin
android·开发语言·kotlin
峥嵘life3 小时前
Android16 EDLA【CTS】CtsNetTestCases存在fail项
android·java·linux·学习·elasticsearch
weixin_403810133 小时前
EasyClick iOS自动化代理IPA挂了 如何再次启动?
android·ios·自动化
银河系栋梁3 小时前
Android AIDL理解
android·运维·服务器
掘根3 小时前
【jsonRpc项目】Dispatcher模块
android·网络
独行soc3 小时前
2026年渗透测试面试题总结-10(题目+回答)
android·网络·python·安全·web安全·渗透测试·安全狮