Android 记一次"清除缓存"所导致的bug
来源:互联网 发布:vi设计软件下载 编辑:程序博客网 时间:2024/06/05 13:34
前提
Android五种数据存储方式:
1. 使用SharedPreferences存储数据
2. 文件存储数据
3. SQLite存储数据
4. ContentProvider
5. 网络存储
Android几种数据存储方式的应用场景
正文
前段时间由于很多人反馈页面无数据的bug,对此考究了一段时间,遂将结果记录于此。
之前:
设计的是,一个存储在SharedPreferences的状态值,控制页面是否取本地页面缓存,本地页面缓存也存储在SharedPreferences里。
这样如果用户清除了SharedPreferences的状态值,那就会请求网络数据,如果没有清除状态值,就会取本地页面缓存数据,也是取保存在SharedPreferences里的数据,这样是没有问题的。
之后:
由于可能页面缓存数据有点多,将存储方式改为了文件存储方式,而没有做存储不到数据的措施。误认为用户清空本地页面缓存数据的同时也清空了SharedPreferences里的数据,而没有采取取不到数据时的措施。
清除数据:
清除数据主要是清除用户配置,比如SharedPreferences、数据库、文件储存等等,这些数据都是在程序运行过程中保存的用户配置信息,清除数据后,下次进入程序就和第一次进入程序时一样;
清除缓存:
缓存是程序运行时的临时存储空间,只会清空文件存储数据。
另外,如果需要持久化数据到本地且不可轻易更改的,还是使用过数据库储存为宜。
参考资料
- Android五种数据存储方式
- Android清除数据、清除缓存、一键清理的区别
阅读全文
0 0
- Android 记一次"清除缓存"所导致的bug
- 一次笔误导致的bug
- 记录一个粗心所导致的bug
- sqlserver缓存计划-清除只使用一次的缓存计划
- android 清除应用的缓存
- 记一次javascript和Android代码互调的bug
- 记一次CEdit的bug
- 记一次神秘的BUG
- 记一次愚蠢的BUG
- 图片缓存BUG导致Ajax无效的解决
- Windows图标缓存导致的一个诡异BUG
- 关于android:targetSdkVersion所导致的问题
- Android清除数据、清除缓存、一键清理的区别
- <android>清除应用缓存的方法
- Android Fragment嵌套导致的bug
- android 所遇到的BUG总结
- 记一次u盘病毒的清除
- 记一次清除ddos肉鸡的经历
- 为C# Window Form程序设置热键
- qt更改全局风格
- 数据结构课程设计
- hdu2476 string painter 区间dp
- webpack no.1~介绍w 以及w和gulp区别 ~学完需要再看再改的~
- Android 记一次"清除缓存"所导致的bug
- AndroidStudio3.0以上版本的坑
- CS224n学习笔记:Lecture1 & 2
- mysql索引总结----mysql 索引类型以及创建
- IT投资教父
- Ubuntu中 apt-get -f install 命令
- Use ELK stack to monitor syslog from network devices
- IT与风投
- MDM Apple Configurator使用