Java 在sqlite或共享首选项中存储登录状态

Java 在sqlite或共享首选项中存储登录状态,java,android,sqlite,sharedpreferences,Java,Android,Sqlite,Sharedpreferences,我制作应用程序,在我的应用程序中我制作登录屏幕hy注册屏幕,我想存储登录状态如果用户登录应用程序,则在用户注销应用程序之前,他不会再次登录,但我不知道共享首选项代码在何处实现,请给我一个合适的解决方案 这是我的完整登录屏幕代码截图 您可以使用共享首选项。它很容易使用 SharedPreferences userDetails =getSharedPreferences("userdetails", MODE_PRIVATE); Editor edit

我制作应用程序,在我的应用程序中我制作登录屏幕hy注册屏幕,我想存储登录状态如果用户登录应用程序,则在用户注销应用程序之前,他不会再次登录,但我不知道共享首选项代码在何处实现,请给我一个合适的解决方案 这是我的完整登录屏幕代码截图


您可以使用共享首选项。它很容易使用

SharedPreferences userDetails =getSharedPreferences("userdetails", MODE_PRIVATE);
                    Editor edit = userDetails.edit();
                    edit.clear();
                    edit.putString("username", "");
                    edit.putString("password", "");
                    edit.commit();
您还可以使用获取数据

userDetails.getString("username", "");
如果要存储字符串数据,可以按如下方式编写:

Pref.setValue(mContext,"test", "Test123");
如果你想获取字符串数据,你可以像下面这样写

Pref.getValue(mContext,"test", "your default value");
SharedPreferences preferences = getSharedPreferences(PREF_FILE, Context.MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.clear(); 
editor.commit();
这一个返回字符串值为“Test123”。如果您在没有设置值的情况下获取值,那么它将在此处返回默认值,即“您的默认值”

当您必须注销时,请清除下面的首选项

Pref.getValue(mContext,"test", "your default value");
SharedPreferences preferences = getSharedPreferences(PREF_FILE, Context.MODE_PRIVATE);
SharedPreferences.Editor editor = preferences.edit();
editor.clear(); 
editor.commit();
您有像这个简单示例一样的商店首选项
您可以使用共享首选项,在注销时清除除登录键之外的所有首选项值。