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 方法

相关推荐
代码or搬砖19 小时前
String字符串
android·java·开发语言
59803541521 小时前
【java工具类】小数、整数转中文大写
android·java·开发语言
TAEHENGV1 天前
进度跟踪模块 Cordova 与 OpenHarmony 混合开发实战
android·javascript·数据库
酸菜牛肉汤面1 天前
6、索引算法有哪些?
android
青春勿语1 天前
Lumen:重新定义 Android 图片加载体验
android·glide
TAEHENGV1 天前
回收站模块 Cordova 与 OpenHarmony 混合开发实战
android·java·harmonyos
TAEHENGV1 天前
创建目标模块 Cordova 与 OpenHarmony 混合开发实战
android·java·开发语言
zjw_swun1 天前
Compose原理简易实现
android·composer
青莲8431 天前
Kotlin Flow 深度探索与实践指南——中部:实战与应用篇
android·前端
建群新人小猿1 天前
陀螺匠企业助手-我的日程
android·大数据·运维·开发语言·容器