从Android应用程序正确注销用户

我正在开发一个小型的 Android应用程序,基本上到目前为止,它只具有登录和注销功能.我正在使用Firebase来存储用户数据以及身份验证.

所以我有登录工作,它认证用户,因为它应该,我已经注销工作的意义上,它不认证用户.但是,在应用程序中有什么需要做的,可以杀死会话吗?

if (id == R.id.action_log_out) {
    ref.unauth(); //End user session
    startActivity(new Intent(MainActivity.this,LoginActivity.class)); //Go back to home page
    finish();
}

这样做是否符合我的想法?很明显,如果有人退出,他们不应该按下按钮,并且神奇地返回到最后一页而不重新登录.

解决方法

当Firebase验证用户(或使用Firebase认证用户)时,它会将该用户的令牌存储在设备的本地存储中.当您调用authWith …方法之一时(当然只有成功验证用户)时才会发生这种情况.

调用ref.unauth();立即从本地存储中删除该令牌.

当用户按下后退按钮时,正确执行的流程将不会自动重新验证,但这取决于您实现的流程(您的问题中缺少可能会导致代码太多).

相关文章

Android 如何解决dialog弹出时无法捕捉Activity的back事件 在...
Android实现自定义带文字和图片的Button 在Android开发中经常...
Android 关于长按back键退出应用程序的实现最近在做一个Andr...
android自带的时间选择器只能精确到分,但是对于某些应用要求...