我想这对你有用
你应该实现这个:
dependencies {
implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
}
你应该这样写:
class App : Application() {
override fun onCreate() {
super.onCreate()
ProcessLifecycleOwner.get().lifecycle.addObserver(lifecycleEventObserver)
}
你应该这样写:
这里我只实现了两个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 -> {}
}
}
你应该实现这个:
dependencies {
implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
}
你应该这样写:
class App : Application() {
override fun onCreate() {
super.onCreate()
ProcessLifecycleOwner.get().lifecycle.addObserver(defaultLifecycleObserver)
}
你应该这样写:
这里我只实现了两个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
}
}
你应该这样写:
class App : Application() {
override fun onCreate() {
super.onCreate()
registerActivityLifecycleCallbacks(activityLifecycleCallbacks)
}
你应该这样写:
private val activityLifecycleCallbacks = object : ActivityLifecycleCallbacks {
override fun onActivityCreated(activity: Activity, savedInstanceState: Bundle?) {
}
override fun onActivityStarted(activity: Activity) {
}
override fun onActivityResumed(activity: Activity) {
}
override fun onActivityPaused(activity: Activity) {
}
override fun onActivityStopped(activity: Activity) {
}
override fun onActivitySaveInstanceState(activity: Activity, outState: Bundle) {
}
override fun onActivityDestroyed(activity: Activity) {
}
}