【问题标题】:When are SharedPreferences deleted?SharedPreferences 何时被删除?
【发布时间】:2013-05-15 13:31:11
【问题描述】:

SharedPreferences 类允许以简单类型(布尔值、字符串等)格式保存应用程序数据。

通常它们不会被删除并且应该保持不变,但是在更新/删除应用程序或清除应用程序缓存等情况下它们会被删除吗?

【问题讨论】:

    标签: android


    【解决方案1】:

    当您从设备应用程序manager 执行clear data 或卸载应用程序时,SharedPreference 的文件将被删除。

    SharePreferences 存储在里面

    /data/data/packagename/shared_prefs/prefsname.xml
    

    除非您的清单中有 android:allowBackup="true"。在这种情况下,它们可能会被恢复。

    【讨论】:

    • 但是找不到这个文件位置我试了100次。请告诉我如何搜索这个文件夹?
    • 等等,packagename 是你的应用程序的实际包,它通常类似于com.something.appname。要访问 /data/data 你需要一个根设备,如果你使用 adb 来寻找它@Mohini
    • 我使用的是带有usb调试模式的eclipse,请告诉我如何搜索这个文件夹?
    • 你需要一个根设备。试试模拟器@Mohini
    • 我认为您可以使用工具调用文件资源管理器。它应该是 ADT @Mohini 的一部分
    【解决方案2】:
    1. Sharedpreferences 将在您从应用程序管理器中强制清除应用程序数据时清除。

    2. 如果你想清除你的应用程序的 Sharepreference 数据,那么你可以使用:

      PreferenceManager.getDefaultSharedPreferences(context).edit().clear().commit();
      

    【讨论】:

    • 这是我的应用程序中的一个原因。
    【解决方案3】:

    转到Setting->Application setting->Application->Clear data,强制数据将清除应用程序的所有数据(sqlitedatabase和共享首选项)被删除。

    【讨论】:

      猜你喜欢
      • 2011-11-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-01
      • 2017-04-20
      • 1970-01-01
      • 2014-06-22
      相关资源
      最近更新 更多