SharedPreferences不是持久的

Vic*_*azi 10 session android sharedpreferences

我在Android中使用SharedPreferences.Everything在同一个会话中运行良好.

但是,一旦我重新启动应用程序,从上一个会话中设置的所有首选项都将丢失.

我需要指定什么来告诉SharedPreferences从运行到运行?

我通过调用创建首选项

SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
Run Code Online (Sandbox Code Playgroud)

然后我通过例如设置属性

preferences.edit().putString(key, value);
Run Code Online (Sandbox Code Playgroud)

我明白了

preferences.getString(key, defaultValue);
Run Code Online (Sandbox Code Playgroud)

谢谢,维克多

jee*_*eet 26

SharedPreferences持续重新启动,重启,我认为问题是你没有提交首选项,使用以下来存储首选项中的值:

Preferences.Editor edit=preferences.edit();
edit.putString(key, value);
edit.commit();
Run Code Online (Sandbox Code Playgroud)

  • `apply()`比`commit()`更好,因为它允许写入在后台发生 (3认同)

Bri*_*uis 19

您可能没有提交更改.设置这样的属性

SharedPreferences.Editor editor = preferences.edit();
editor.putString(key, value);
editor.commit();
Run Code Online (Sandbox Code Playgroud)

没有承诺,你就会在风中放屁.

  • 这迅速升级:D (2认同)