在我的应用程序中,我在共享首选项文件中获得了用户信息。当用户在登录页面上输入他们的详细信息时,我只希望其信息在共享首选项文件中的用户登录。我该怎么做?
问问题
446 次
3 回答
3
您可以使用您的应用程序共享首选项。可以使用您为这些首选项设置的密钥随时访问首选项。
static final String KEY_USERNAME = "username";
static final String KEY_PASSWORD = "password";
if (saveLogInDetail) { //save username and pw to prefs
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
Editor ed = prefs.edit();
ed.putString(KEY_USERNAME, theUsername);
ed.putString(KEY_PASSWORD, thePW);
ed.commit();
}
要访问信息或检查有效的用户名和密码,请使用:
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
String storedUsername = prefs.getString(KEY_USERNAME, "Default Value if not found");
String storedPassword = prefs.getString(KEY_PASSWORD, ""); //return nothing if no pass saved
于 2013-09-17T07:34:40.033 回答
1
将您的登录数据存储在 sharedpreferences 中: String username="dipali"; 字符串传递=“1111”;
SharedPreferences.Editor editor = viewLoginScreen
.getSharedPreferences(
"prefernce",
Context.MODE_PRIVATE).edit();
editor.putString(
"username",
user);
editor.commit();
SharedPreferences.Editor editor = viewLoginScreen
.getSharedPreferences(
"prefernce",
Context.MODE_PRIVATE).edit();
editor.putString(
"pass",
pass);
editor.commit();
获取共享偏好数据:
SharedPreferences shar = viewLoginScreen
.getSharedPreferences(
"prefernce",
Context.MODE_PRIVATE);
String username=shar.getString("username","");
String pass=shar.getString("pass","");
于 2013-09-17T07:32:57.403 回答
-1
您应该使用 SQlite 数据库而不是使用共享首选项。设置数据库后,如果用户未注册,则将用户凭据插入数据库。在您的情况下,检查当前用户是否在数据库中,如果退出对他进行身份验证,否则您可以强制他注册到应用程序。您可以在此处详细查看 sqlite http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html
于 2013-09-17T07:33:42.937 回答