I am allowing the user to create multiple SharedPreferences
files, but I also would like the option for them to delete these files. I know I could use internal storage, but that is not my question.
My question is: "How can I delete in code or manually (not just clear) a SharedPreferences
file?"
If you get SharedPreferences
instance via Context.getSharedPreferences("X")
, then your file will be named X.xml
.
It will be located at /data/data/com.your.package.name/shared_prefs/X.xml
. You can just delete that file from the location. Also check /data/data/com.your.package.name/shared_prefs/X.bak
file, and if it exists, delete it too.
But be aware, that SharedPreferences
instance saves all data in memory. So you'll need to clear preferences first, commit changes and only then delete preferences backing file.
This should be enough to implement your design decision.