Android 长时间保存用户输入的数据
我正在编写一个应用程序,用一个登录界面保存密码。用户可以更改登录密码。我使用以下代码保存密码,这样当应用程序重新启动时,密码不会重置Android 长时间保存用户输入的数据,android,Android,我正在编写一个应用程序,用一个登录界面保存密码。用户可以更改登录密码。我使用以下代码保存密码,这样当应用程序重新启动时,密码不会重置 @Override public void onSaveInstanceState(Bundle savedInstanceState){ savedInstanceState.putString("pwd", currentPwd); super.onSaveInstanceState(savedInstanceState); } @Override publ
@Override
public void onSaveInstanceState(Bundle savedInstanceState){
savedInstanceState.putString("pwd", currentPwd);
super.onSaveInstanceState(savedInstanceState);
}
@Override
public void onRestoreInstanceState(Bundle savedInstanceState){
currentPwd = savedInstanceState.getString("pwd");
}
但我发现它只能保存密码一段时间。当我等待了很长时间,大约1小时,没有重新启动手机,它会重置我的密码
如何保存密码,使其不会重置 您可以使用SharedReference长期保存该类型的信息
您必须使用SharedReferences保存数据:
SharedPreferences prefs =
getSharedPreferences("myprefname",Context.MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putString("pwd", "thepassword");
editor.commit();
然后您可以检索它:
SharedPreferences prefs =
getSharedPreferences("myprefname",Context.MODE_PRIVATE);
String password=prefs.getString("pwd",null);
我和你有完全相同的问题。我只是简单地使用了共享优先权。它将登录数据保存在XML文件中,您可以对其进行读取和写入 以下是Android writeup: 写:
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
SharedPreferences.Editor editor = settings.edit();
editor.putString("key1", username);
editor.putString("key2", password);
editor.commit();
全文如下:
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
String username = settings.getString("key1", null);
String password = settings.getString("key2", null);
我和你有完全相同的问题。我只是简单地使用了共享优先权。它将登录数据保存在一个XML文件中,您可以对其进行读写操作。当我等待1小时时,仍然存在问题。我现在的代码是这样的:@Override public void onCreateBundle savedInstanceState{super.onCreatesavedInstanceState;requestWindowFeatureWindow.FEATURE_NO_TITLE;setContentViewR.layout.main;SharedPreferences settings=getsharedpreferencesetting,0;currentPwd=settings.getStringpwd,abc;}@Override public void onStop{super.onStop;SharedReferences settings=GetSharedReferences,0;SharedReferences.Editor=settings.edit;Editor.putStringpwd,currentPwd;Editor.commit;}我有什么问题吗?
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
String username = settings.getString("key1", null);
String password = settings.getString("key2", null);