将用户登录到我的应用程序onStop

时间:2018-04-03 14:15:24

标签: android security logout android-lifecycle

我想在应用处于onStop状态或onDestroy时将用户从应用中注销。

我是否必须为每个活动编写注销代码,以便在该状态下将用户从应用程序中注销?

在活动生命周期中处于什么状态最好是将用户从应用程序中注销?

这是出于安全目的。

2 个答案:

答案 0 :(得分:1)

在这种情况下,您可能会发现lifecycle aware components非常有用。

前提是,您有LifecycleObserver可以添加到Activity。此组件将侦听您希望注销的步骤。无论是onStop还是onDestroy

这使您可以从Activity中取出逻辑来处理注销,让您在需要此系统的任何活动中保持通用标准。

示例:

public class MyLogoutObserver implements LifecycleObserver {
    @OnLifecycleEvent(Lifecycle.Event.ON_DESTROY)
    public void logoutListener() {
        // Code to logout goes here.
    }
}

然后你可以在你的活动中提供这个:

getLifecycle().addObserver(new MyLogoutObserver());

如果你需要Context,你可以考虑到这一点构建观察者。

答案 1 :(得分:0)

所以我创建了一个像这样的辅助类

public class AppController extends Application {
      private static AppController mInstance;

      @Override
      public void onCreate() {
         super.onCreate();
         mInstance = this;
     }

     public void logOUt(){
         //Log out logic
     }
}

然后从logOut()这样调用onStop()

 @Override
public void onStop(){

    AppController.getInstance().logOut();
    super.onStop();
}