如何在特定时间后退出Android应用程序?

时间:2012-01-19 12:30:43

标签: java android

我正在构建一个具有登录和注销选项的Android应用程序。如果用户已登录并且未使用(或保持闲置)一段时间(比如10分钟),如何让应用程序返回登录屏幕?另外,如何检查多次登录?请注意我的应用程序使用外部数据库(mysql)。我是用PHP代码做的。另外,如何从mysql检查多个登录(我有多个用户)并允许每个用户登录?

这是我的身份验证代码:

try
{
    HttpClient httpclient = new DefaultHttpClient();
    HttpPost httppost = new HttpPost("http://10.0.2.2/user_validate.php");
    HttpResponse response = httpclient.execute(httppost);
    HttpEntity entity = response.getEntity();
    InputStream inputStream = entity.getContent();

    byte[] data = new byte[256];

    buffer = new StringBuffer();
    int len = 0;
    while (-1 != (len = inputStream.read(data)) )
    {
        buffer.append(new String(data, 0, len));
    }

    inputStream.close();
}
catch (Exception e)
{
    Toast.makeText(Login.this, "error"+e.toString(), Toast.LENGTH_LONG).show();
}

if(buffer.charAt(0)=='Y')
{
    Intent intent = new Intent(getApplicationContext(), 
        Home.class).setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    finish();
    startActivity(intent);
}

1 个答案:

答案 0 :(得分:2)

在应用程序或服务器上,您要存储上次成功完成的用户操作的时间戳(需要登录凭据)。

然后针对该时间戳进行测试,以查看当前请求是否大于或小于10分钟阈值。如果在上次成功的时间戳之后超过10分钟,那么您需要让用户再次登录。