应用程序生命周期,设置计时器以注销用户

Application lifecycle, setting a timer to logout the user

我是 android 的新手,目前我 运行 遇到有关用户登录和注销的问题。我有这些活动:

想法是当用户进入 t运行sactions 时请求登录。用户登录后,他在使用该应用程序时保持登录状态。即使他停留在一个页面上并且几分钟内什么都不做。当应用程序锁定或关闭时,用户将在 60 秒后注销。当他及时回来时,他会保持登录状态,否则会显示一个新的登录表单。

所以我在想怎么解决这个问题。我的第一个想法是在应用 locks/is 关闭时设置一个计时器。当用户回来时,计时器会被检查。如果 60 秒后用户详细信息(在内存中)被丢弃。

我觉得跟应用的生命周期有关系,可能是静态变量。但是我不知道从哪里开始。

有没有人有解决方案或提示让我可以完成这件事??将不胜感激

在这种情况下使用共享首选项 记下应用程序关闭时的当前时间和重新启动应用程序时的当前时间,将当前时间与停止时间进行比较,然后找出时间差。如果它大于您的需求,则请求登录页面。 如果你想要时间差的示例代码,我可以编辑我的 Post

您可以在用户登录时保存时间戳,也可以在共享首选项中保存最大会话时间。当用户再次尝试进行交易时,您可以检查当前时间和会话的时间戳。如果时差大于会话时间,则要求登录。

Service Class is the answer to your problem.

创建一个每次登录时启动的后台服务,并在其中写入计时器代码。

创建服务参考:

https://developer.android.com/training/run-background-service/create-service.html