4

我观察到,当我在设置>应用程序>特定应用程序中单击清除缓存时,共享首选项数据会被删除。

即使我清除了缓存,如何保留共享的偏好数据?可能吗?如果可能的话,意味着给出一个想法

4

2 回答 2

3

值得注意的是,Android 中有三种数据清除方式,您的应用程序无法控制:

  • 清除数据
  • 清除缓存
  • 清除默认值

拥有持久数据的唯一方法是使用 SD 卡,但同样,用户不希望在卸载应用程序后将数据保存在卡上,或者用户可以卸载 SD 卡。

或者你可以考虑:

  1. 使用某种身份验证将数据存储在远程服务器上以检索它
  2. 使用数据备份服务
于 2015-06-25T10:45:15.863 回答
1

共享首选项通常用于在用户设备上存储临时信息。所以通常它保存临时信息/数据。

要存储将在“清除缓存”操作中保留下来的数据,您可以将信息存储在 sqllite 数据库中。

为此,您需要实现一个内容提供程序,它将封装对 sqllite 数据库的访问,它将帮助您存储和检索在清除缓存时不会被删除的数据。在此处找到有关如何创建内容提供程序的更多信息:http: //developer.android.com/training/basics/data-storage/databases.html

于 2015-06-25T10:43:20.937 回答