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

时间:2016-07-14 08:47:40

标签: android session static android-lifecycle lifecycle

我对Android很新,目前我遇到了一个关于用户登录和注销的问题。我有这些活动:

  • 启动活动
  • 地图活动
  • 交易活动
  • 设置活动

这个想法是当用户进入交易时,请求登录。用户登录后,他在使用应用程序时保持登录状态。即使他留在一个页面上并且在多分钟内也没有做任何事情。当应用程序锁定或关闭时,用户在60秒后退出。当他及时回来时他会一直登录,否则会显示一个新的登录表单。

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

我认为它与应用程序生命周期有关,可能是一个静态变量。但我不知道从哪里开始。

有没有人有解决方案或小费,所以我可以完成这件事?非常感谢

3 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

您可以在用户登录时保存时间戳,还可以在共享首选项中保存最长会话时间。当用户再次尝试执行事务时,您可以使用当前时间和会话检查时间戳。如果时差大于会话时间,只需要登录。

答案 2 :(得分:0)

  

服务课程是您解决问题的方法。

创建一个后台服务,每次登录时都会启动,并在那里写入定时器代码。

创建服务的参考:

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