Android:检查应用程序是处于后台还是已关闭

时间:2017-01-05 14:18:20

标签: android session login background logout

在我的项目中,我需要区分应用程序在后台或应用程序已关闭。

实施例: 我启动了我的应用程序,然后登录,但是我没有选中“保持登录状态”框。因此,如果我关闭应用程序,它应该在关闭之前将其注销。 (这很容易获得)但是:该应用程序可以打开谷歌地图,并拨打屏幕,这也将应用程序放在后台,因此也将调用活动的onStop。如果我从这些屏幕返回应用程序,我应该保持登录状态。

2 个答案:

答案 0 :(得分:0)

您需要在onDestroy上调用它,但如果用户从多任务菜单中杀死应用程序,则不会调用onDestroy,所以我会这样做。如果用户没有回到应用程序(我在sharedprefs中使用布尔值检查,在onresume中设置),我会在10分钟内执行一个需要执行的任务。我将用户注销。

我想通了这个 - > Schedule task for a specific date & time in android

答案 1 :(得分:0)

通过在MainActivity中创建一个布尔值来克服这个问题,并且因为它只在Activity活动时有值,所以可以在重新打开应用程序或从后台返回应用程序时使用它。