if (!mUserName.equals(username) || !mPassWord.equals(password)){ Toast.makeText(this,"用户名密码不正确!",Toast.LENGTH_SHORT).show(); if (count<3) { count += 1; } if (count == 3){ Toast.makeText(this,"您的账号已被锁!请"+time/60+"分钟后再尝试登陆!",Toast.LENGTH_SHORT).show(); if (timer == null) { timer = new Timer(); timer.schedule(new TimerTask() { @Override public void run() { if (time > 60) { time -= 60; } else { count = 0; timer.cancel(); time = 600; timer = null; } } }, 60 * 1000, 60 * 1000); } return; } return; } }else { Toast.makeText(this,"该账户不存在!",Toast.LENGTH_SHORT).show(); return; } if (count == 3){ Toast.makeText(this,"用户名密码正确!但您的账号已被锁!",Toast.LENGTH_SHORT).show(); Toast.makeText(this,"请"+time/60+"分钟后再尝试登陆!",Toast.LENGTH_SHORT).show(); return; } count = 0;
验证用户名密码错误的时候,定义一个count来记录次数。当次数达到3的时候,return出来并toast提示。
10分钟后再将count赋值为0。用Timer类的schedule方法。注意的是要只让该方法执行一次,即当timer为空时才执行该方法。
登陆成功时记得把count赋值为0,防止登陆错一次之后登陆成功了后面再登陆错两次就被限制了。