APP长时间处于后台,再次调用时提示用户重新登录

第一步:当应用被处于后台时,调用计时器的start()方法,开始计时
在所有Activity继承的BaseSwiBackAct中的
    public void onStop() {        EventBus.getDefault().unregister(this);        OneTimerFactory.getTimer().start();        super.onStop();    }

第二步:当用户重新唤醒应用时,弹出对话框
 protected void onStart() {  //a是判断是否登录失效的标志位        if (AppDataUtils.a) {            OneTimerFactory.getTimer().cancel();            dialogUnlock();            AppDataUtils.a = false;        }        super.onStart();    }

计时器的写法
  1. private CountDownTimer timer = new CountDownTimer(10000, 1000) {
  2. @Override
  3. public void onTick(long millisUntilFinished) {
  4. vertifyView.setText((millisUntilFinished / 1000) + "秒后可重发");
  5. }
  6. @Override
  7. public void onFinish() {
  8. vertifyView.setEnabled(true);
  9. vertifyView.setText("获取验证码");
  10. }
  11. };

CountDownTimer timer = new CountDownTimer(10000, 1000)中,第一个参数表示总时间,第二个参数表示间隔时间。意思就是每隔一秒会回调一次方法onTick,然后10秒之后会回调onFinish方法。

时间: 2024-08-19 01:06:21

APP长时间处于后台,再次调用时提示用户重新登录的相关文章

黄聪:WordPress 后台发布文章时提示用户选择分类

很多用户在后台发布文章,常常会忘记选择分类,所以很有必要添加一个提醒功能,如果没有选择分类,点击发布时,就显示一个提示信息.要实现这个功能,只要将下面的代码添加到主题的 functions.php 即可: /** * WordPress 发布文章前必须选择分类 * http://www.wpdaxue.com/choose-a-category-before-publish.html */ add_action('admin_footer-post.php', 'choose_a_categor

当页面关闭或刷新时提示用户

需求: 1.当页面关闭或刷新时提示用户是否已保存: 2.页面中的某些ajax操作成功后,如果需要刷新(window.location.reload())页面,但不需要提示用户是否已保存. 解决方法: 1)在页面加载后注册onbeforeunload事件,页面关闭前和刷新前都会触发onbeforeunload事件: //注册页面刷新和关闭提醒事件 window.onbeforeunload = function () { return "请确认信息是否已保存!"; }; 2)在相应的aj

如何解决每次向后台发起请求时判断用户是否处于登录状态?

事件起因: 小x向我反应用户在我开发的系统中,在其中一个功能上待了很长时间,当用户跳转到其他界面上时,突然就掉线了. 他告诉我应当在用户每次向后台索取数据的时候进行用户登录状态的检验. 用户的登录状态其实是个比较繁琐的过程.按照业务的要求,当用户点击登录界面的保存密码按钮时,在本地的cookie进行长达七天的保存.当用户没有点击保存密码的时候,主要依靠session来进行保存. session与cookie: 这两者之间的关系,网上有太多内容介绍了.简单来说:session放在服务器端.当浏览器

vue路由跳转时判断用户是否登录功能

通过判断该用户是否登录过,如果没有登录则跳转到login登录路由,如果登录则正常跳转. 一丶首先在用户登录前后分别给出一个状态来标识此用户是否登录(建议用vuex): 简单用vuex表示一下,不会可以自己去官网多看看: import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex); var state = { isLogin:0, //初始时候给一个 isLogin=0 表示用户未登录 }; const mutations = { cha

2016-1-5第一个完整APP 私人通讯录的实现 2:增加提示用户的提示框,监听文本框

一:在登录时弹出提示用户的提示框: 1.使用第三方框架. 2.在登陆按钮点击事件中增加如下代码: - (IBAction)loginBtnClicked { NSString *acount = self.acountField.text; NSString *password = self.passwordField.text; // 跳出正在登陆的提示框 [MBProgressHUD showMessage:@"正在登陆"]; // 模拟加载中 QAQ 感觉好喜感啊 dispatc

如何添加WebService调用时的用户认证

场景: 当把发布好的WebService地址或WSDL提供给调用方时,需要对方先进行身份的认证通过后才允许接口的进步访问.而不是公开的谁都可以调用. 解决: 1.在IIS中设置对应网站的目录访问权限.禁止匿名访问,开户Windows认证. 2.新建一用户,禁掉用户的远程桌面功能. 注:不要将实现此功能的思路往代码实现上做,那就麻烦了.

环信java后台发送消息时提示msg 应该为JSONObject 的坑

解决了 ,问题不在传TextMessageBody 的msg参数的json格式,而是TextMessageBody 本身的getbody方法有问题.    public ContainerNode<?> getBody() {        if (!isInit()) {            // this.getMsgBody().put("type", MsgType.TEXT);            // this.getMsgBody().put("

程序长时间后台保持运行

文一 我从苹果文档中得知,一般的应用在进入后台的时候可以获取一定时间来运行相关任务,也就是说可以在后台运行一小段时间. 还有三种类型的可以运行在后以, 1.音乐 2.location 3.voip 文二 在IOS后台执行是本文要介绍的内容,大多数应用程序进入后台状态不久后转入暂停状态.在这种状态下,应用程序不执行任何代码,并有可能在任意时候从内存中删除.应用程序提供特定的服务,用户可以请求后台执行时间,以提供这些服务. 判断是否支持多线程 UIDevice* device = [UIDevice

Appirater -- app中提示用户为app评价的提示框

Appirater是一段你可以嵌入自己工程中的代码,在用户使用应用一段时间后会自动弹出提示用户进行评分. 使用Appirater方面,你可以简单把源代码嵌入你的app工程中,并把以下代码添加至它的委托类中: #pragma mark 应用评分 [Appirater setAppId:kAppId];//程序的ID [Appirater setDaysUntilPrompt:7];//多少天后开始提示评价 [Appirater setUsesUntilPrompt:5];//多少次运行后开始提示评