3

在我的应用程序中,首选项由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”的首选项被重置。当然,所有其余的偏好都不会受到影响。

那么,如何实现完全的默认重置呢?

最好获取所有首选项文件的名称,然后一一重置。

但理想情况下,我希望以编程方式销毁所有应用程序数据。这可能是最好的变体。

4

1 回答 1

0

原始答案:请参阅删除共享首选项

编辑:您说“我需要重置为应用程序默认值”。该链接提供了解决方案:您没有提到重置所有应用程序的所有首选项。您无法从您自己的应用程序中删除其他应用程序的首选项,因为共享首选项存储在一个文件中,您的应用程序对包含这些文件的目录没有写入权限

于 2012-08-23T09:51:18.393 回答