Kotlin

检测应用在前台和后台之间的变化

2018-06-12  本文已影响54人  小菜鸟程序媛

分为三步:

  1. 在你的gradle文件中添加如下依赖:
implementation "android.arch.lifecycle:extensions:$project.archLifecycleVersion"
kapt "android.arch.lifecycle:compiler:$project.archLifecycleVersion"
  1. 创建一个继承自LifecycleObserver监听器
class ForegroundBackgroundListener : LifecycleObserver {


    @OnLifecycleEvent(Lifecycle.Event.ON_START)
    fun startSomething() {
        Log.v("ProcessLog", "APP IS ON FOREGROUND")
    }

    @OnLifecycleEvent(Lifecycle.Event.ON_STOP)
    fun stopSomething() {
        Log.v("ProcessLog", "APP IS IN BACKGROUND")
    }
}
  1. 最后,在BaseActivity的onCreate方法中获取ProcessLifecycleOwner并且添加监听
override fun onCreate() {
        super.onCreate()

        ProcessLifecycleOwner.get()
                .lifecycle
                .addObserver(
                        ForegroundBackgroundListener()
                                .also { appObserver = it })
    }
上一篇下一篇

猜你喜欢

热点阅读