在我的应用中,偏好设置由SharedPreferences
组织。我需要执行重置为应用程序默认值。
我知道如何重置特定SharedPreferences
的所有值:
SharedPreferences prefs = getSharedPreferences(
"name_of_the_preferences_file",
MODE_PRIVATE
);
SharedPreferences.Editor editor = prefs.edit();
editor.clear();
editor.commit();
但问题是只重置一个特定首选项“name_of_the_preferences_file”的首选项。当然,所有其他偏好都不会受到影响。
那么,如何实现完全默认重置?
最好获取所有首选项文件的名称,然后逐个重置。
但理想情况下,我希望以编程方式销毁所有应用程序数据。这可能是最好的变种。
答案 0 :(得分:0)
原始答案:见Deleting shared preferences
编辑:您声明“我需要执行重置为应用程序默认值。”并且该链接提供了解决方案:您没有提及重置所有应用的所有首选项。 您无法从自己的应用程序中删除其他应用程序的首选项,因为共享首选项存储在文件中,而您的应用程序将不具有对包含这些文件的目录的写权限