有些时候按下主页按钮关闭应用程序,onDestroy()不调用。我希望在整个应用程序关闭时调用一个方法,我不打算在所有活动的onDestroy()中调用我的方法。
答案 0 :(得分:1)
在appication类中实现LifecycleObserver,然后用作打击:
public class App extends Application implements LifecycleObserver{
@SuppressLint("CheckResult")
@OnLifecycleEvent(Lifecycle.Event.ON_START)
public void onMoveToForeground() {
}
@SuppressLint("CheckResult")
@OnLifecycleEvent(Lifecycle.Event.ON_STOP)
public void onMoveToBackground() {
}
}
还可以使用其他事件,例如Lifecycle.Event.ON_DESTROY或ON_CREATE
答案 1 :(得分:-1)
应用程序不会在按下主页按钮时关闭。但它会在后台进行。
当你的应用程序进入后台时(你的前端活动进入后台)它会调用onStop()方法(现在看不到Activity)。所以你应该在这里做所有的事情。
没有这样的回调Application类。告诉你应用程序被破坏了。 如果您想在应用程序完全关闭时触发事件。您应该检查应用程序的活动堆栈。如果它没有任何活动,则应用程序关闭。你应该从服务中检查它。