【发布时间】:2019-05-11 23:47:41
【问题描述】:
我正在尝试在第一次运行我的应用程序时初始化默认共享首选项。我发现根据我的操作方式,Android文件系统上的共享首选项文件存在差异。
如果我使用以下代码专门写入共享首选项,则 XML 文件位于 /data/data/myapp/shared_prefs/ 中:
SharedPreferences.Editor editor = pref.edit();
if ((myKey = pref.getString("key", null)) == null) {
myKey = "default value";
editor.putString("key", myKey );
editor.commit();
}
但是,如果我使用下面的单行来初始化默认值,我在 /data/data/myapp/shared_prefs/ 中看不到 XML 文件:
myKey = pref.getString("key", "default value");
在后一种情况下,XML 文件存储在哪里,为什么会有不同的行为?
【问题讨论】:
-
在后一种情况下,没有写入任何内容。除非您之前曾向同一个
SharedPreferences写过一些东西,否则您不应该期望在那里看到文件。
标签: android sharedpreferences default-value