在我的应用程序中,首选项按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"的首选项才会重置。当然,所有的休息偏好都不会受到影响。
那么,如何实现完全脱脂复位呢?
最好能获得所有首选项文件的名称,并逐一重置。
但理想情况下,我希望以编程方式销毁所有应用程序数据。这可能是最好的变体。
原始答案:请参阅删除共享首选项
编辑:你说"我需要执行重置到应用程序默认值。"该链接提供了解决方案:你没有提到重置所有应用程序的所有首选项。您无法从自己的应用程序中删除其他应用程序的首选项,因为共享引用存储在一个文件中,并且您的应用程序对包含这些文件的目录没有写入权限