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

相关推荐
GitLqr6 小时前
Flutter 无障碍开发实战:玩转 Semantics 解决视障用户使用痛点
android·flutter·dart
雨白10 小时前
掌握 NestedScrolling 嵌套滑动:手写仿知乎折叠主页
android
Xzaveir11 小时前
别把所有“认证”都塞进 AuthService:实名、一键登录与号码身份的领域拆分
android·人工智能
BerrySen17811 小时前
KMP全栈开发:从Android到AI Agent的技术演进与实践
android·人工智能
AFinalStone13 小时前
Android 7系统休眠唤醒(一)电源管理架构全景图
android·powermanager·电源管理
YM52e13 小时前
鸿蒙Flutter Center居中组件:Align对齐详解
android·学习·flutter·华为·harmonyos·鸿蒙
时间的拾荒人14 小时前
MySQL 视图详解
android·数据库·mysql
祉猷并茂,雯华若锦15 小时前
Appium 3.x安卓按键与通知栏操作全指南
android·appium
码农coding15 小时前
android 12 SurfaceFlinger开机启动分析
android
hunterandroid15 小时前
Paging 3 RemoteMediator 实战:构建离线优先的分页列表
android·前端