Android中Preferences和SharedPreferences有什么区别?

7
什么是java.util.prefs.Preferencesandroid.content.SharedPreferences之间的区别?它们看起来是用于类似的功能 - 在这两个工具中,您都可以通过键放置并获取一个值,但是Preferences似乎更加复杂,属于操作系统而不是应用程序。

2
请检查以下链接:https://dev59.com/MmAg5IYBdhLWcg3wwdPA - AmeeJoshi
@Amee Joshi 这个问题涉及到android.preference,但我问的是java.util.prefs.Preferences,它不是一个UI组件。 - andstepko
4
在 Android 应用中,您可能不应该使用 java.util.prefs.Preferences,而应该使用 SharedPreferences。 - Egor
2个回答

4

Preferences是一个核心Java类 链接1

java.util.prefs.Preferences:此类允许应用程序存储和检索用户和系统首选项和配置数据。此数据在实现相关的后备存储中持久存储。

SharedPreferences是一个特定于Android的接口 链接2

android.content.SharedPreferences:用于访问和修改由getSharedPreferences(String,int)返回的首选项数据的接口。对于任何特定的首选项集,所有客户端共享此类的单个实例。


1

偏好设置:设置的用户界面部分。它包含不同的类,允许您从代码或XML组合设置屏幕。

共享偏好设置:用于在XML文件中存储值。这些文件由Android为您创建、维护和删除。它们未加密,当用户对其手机进行根操作时可以轻松更改。不要将其用于敏感信息。 上述偏好设置使用共享偏好设置作为基础系统。

要获取所有偏好设置,我们使用SharedPreferences:

SharedPreferences sharedPreferences = getPreferenceScreen().getSharedPreferences();

而要处理特定的偏好设置,我们使用:

Preference p = getPreferenceScreen().getPreference(index);


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,