有没有办法知道Android应用程序正在退出?

时间:2015-01-16 11:04:19

标签: android sharedpreferences

我想在我的应用中执行以下操作:

1)在发布时显示通知:已完成

2)切换应用

的活动时不显示通知

3)如果通过此应用启动了其他应用,则再次返回应用时会显示通知

我计划通过共享prefs(通过在其中存储一个布尔值)来实现它,

但无法找出重置此值的地方

即。如何知道应用程序正在退出或切换到另一个应用程序以重置此值(因此它可以在再次启动应用程序时显示通知)。

4 个答案:

答案 0 :(得分:1)

Activity转到后台时,会调用onPause(),当它返回到前台时,会调用onResume()。您可以使用该状态隐藏/显示通知,甚至可以存储SharedPreferences

看一下Activity Lifecylce:

Activity Lifecycle

答案 1 :(得分:0)

尝试了解Android应用程序的生命周期。

通过以下方法文档。

onCreate() , onStart(), onPause() , onResume() , onDestroy() , onRestart() 

Link

答案 2 :(得分:0)

如果要检测所有应用程序的活动是否已进入后台,则需要扩展Application类并注册活动生命周期侦听器。然后只计算对onPause()和onCreate()方法的调用。 http://developer.android.com/reference/android/app/Application.html#registerActivityLifecycleCallbacks(android.app.Application.ActivityLifecycleCallbacks)

答案 3 :(得分:0)

  

3)如果在此应用程序上启动了另一个应用程序,同时返回到该应用程序   应用再次显示通知。

要执行此操作,您需要覆盖后退按钮并检查活动堆栈。如果是0 - 显示通知。