用户关闭应用程序时Android会破坏会话

时间:2014-10-23 06:22:00

标签: android android-activity android-authenticator

我正在开发一个Android应用程序,其中第一个是登录页面,从登录重定向后有一个菜单页面。如果我在任何其他页面上并且我关闭了我的应用程序,我想要销毁我的会话,当我打开我的应用程序时,应该打开登录页面。从任何其他页面,如果我按下我的设备的后退按钮,那么我只想重定向到菜单页面。有人能帮助我吗?

@Override
protected void onResume() {
    if (not logedin)
    {
        logout;
        redirect to menu;
    } 

  super.onResume();
}

@Override
protected void onDestroy() {    
   logout;
   super.onDestroy();
}        

我在每个页面都使用了这段代码,但这不起作用..

当我按下HOME按钮时,没有调用destroy()..但是当我按下HOME按钮时,我希望所有活动都被销毁。

1 个答案:

答案 0 :(得分:2)

你可以。在活动中销毁会话/ cookie / SharedPreferences。

在Activity中执行此过程...调用以下方法:

onDestroy(){
    context.getSharedPreferences("YOUR_PREFS", 0).edit().clear().commit();
}

onResume(){
    context.getSharedPreferences("YOUR_PREFS", 0).edit().clear().commit();
}

或者您可以在Back Key事件中执行此操作:

 public boolean onKeyDown(int keyCode, KeyEvent event) {
        if ((keyCode == KeyEvent.KEYCODE_BACK)) {
            // do your task
        }
        return super.onKeyDown(keyCode, event);
    }