在我的应用中,我使用PreferenceActivity
框架来存储持久数据。我的目的是创建多个保存文件,所有这些文件都可以由Preference
访问,但一次只能访问一个。
何时使用Context.openFileOutput()
生成的私有文件更好?何时使用SharedPreferences
更好?
修改
我的数据仅存在于原语中。
答案 0 :(得分:1)
通常情况下,开发人员使用getDefaultSharedPreferences
对整个应用程序通用的首选项文件。
但是,Android在Context中有一个getSharedPreferences(String name, int mode)
方法。您可以使用它来拥有多个首选项文件,在您的情况下 - 使用传递到name
参数的唯一名称来保存文件。
关于易变性,您可以通过Editor
获取edit()
,然后拨打commit()
来强制优先保存。
请务必注意,确实会根据name
分享SharedPreferences:
检索并保存首选项文件“name”的内容,返回SharedPreferences,您可以通过它来检索和修改其值。只有一个SharedPreferences对象实例返回给任何相同名称的调用者,这意味着他们一旦完成就会看到彼此的编辑。