0

我一直在开发android应用程序。我有两个应用程序 A、B。在 A 中,我创建了一个文件共享首选项:

SharedPreferences sharedPref = getSharedPreferences("account", Context.MODE_WORLD_READABLE);

在B中,我从B的sharedPref获取数据。但我有问题:
当我用新值更新A中的文件sharedPref并从A打开应用程序B以读取sharedPref中的数据时。检索到的值不正确,它是旧值,它不会为应用 B 更新。我删除并重新启动应用 B,然后它得到正确的值(新值)。你能帮助我吗。非常感谢你。

editor.putString("username", user);
editor.putString("password", pass);
editor.commit();
MainActivity.this.overridePendingTransition(0, 0);
MainActivity.this.finish();
MainActivity.this.overridePendingTransition(0, 0);
Intent intent = getPackageManager().getLaunchIntentForPackage("com.inet.solution");
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
4

2 回答 2

0

代替

SharedPreferences sharedPref = getSharedPreferences("account", Context.MODE_WORLD_READABLE);

为了

SharedPreferences sharedPref = getSharedPreferences("account", MODE_PRIVATE);

希望这可以帮助

于 2013-09-03T10:57:59.220 回答
0

你用这个

SharedPreferences sharedPref = getApplicationContext().getSharedPreferences("account", Context.MODE_WORLD_READABLE);

试试这个有用的链接

于 2013-09-03T11:46:51.030 回答