Android 前后台切换,以及5分钟不操作跳转至登陆

本文解决的问题:

Android 后台切换到前台运行,判断是否超过一段时间,如果超过一段时间就跳转至登陆,以及前台运行时一段时间不操作跳转至登陆。

本文有短信登陆和手势密码登陆两种   以30分钟不操作跳转短信登陆,5分钟不操作跳转手势密码登陆。时间具体看业务需求。

原理:

1,我们需要启动一个定时器去定时判断是否5分钟没有操作app (前台运行)

2,后台切换前台运行的时候,需要立即去判断是否5/30分钟没有操作app 

3,处于后台运行的时候,一般需要停止定时器,不然浪费资源。看具体需求而定

一  在BaseActivity里面加上前后台切换时发送广播代码,注:此处DataHelper为缓存类,如下代码:

Android 前后台切换,以及5分钟不操作跳转至登陆

Android 前后台切换,以及5分钟不操作跳转至登陆

二  MainActivity代码如下

Android 前后台切换,以及5分钟不操作跳转至登陆

绑定服务,注册广播和广播接收器

Android 前后台切换,以及5分钟不操作跳转至登陆

释放资源

Android 前后台切换,以及5分钟不操作跳转至登陆

三   Service类

Android 前后台切换,以及5分钟不操作跳转至登陆

Android 前后台切换,以及5分钟不操作跳转至登陆

具体算法代码如下:

Android 前后台切换,以及5分钟不操作跳转至登陆

注:上面代码中的last_time 为最后操作app的时间。看具体业务需求,比如5分钟不做网络请求,可以在接口请求基类缓存last_time,