What is the difference between Preferences and SharedPreferences in Android?

android, android-sharedpreferences, sharedpreferences

Solution

Preferences is a core java class link1

java.util.prefs.Preferences : This class allows applications to store and retrieve user and system preference and configuration data. This data is stored persistently in an implementation-dependent backing store.

SharedPreferences is an android specific interface link2

android.content.SharedPreferences : Interface for accessing and modifying preference data returned by getSharedPreferences(String, int). For any particular set of preferences, there is a single instance of this class that all clients share.

Problem

What is the difference between `java.util.prefs.Preferences` and `android.content.SharedPreferences`? Looks like they are for similar things - you can put and get a value by a key in both of them, but Preferences looks like something more difficult and belongs more to the OS than to an app.

Original source

Related problems