参考http://weishu.me/2016/10/13/sharedpreference-advices/?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io
1.请不要滥用SharedPreference
- 不要存放大的key和value!我就不重复三遍了,会引起界面卡、频繁GC、占用内存等等,好自为之!
- .毫不相关的配置项就不要丢在一起了!文件越大读取越慢,不知不觉就被猪队友给坑了;蓝后,放进defalut的那个简直就是愚蠢行为!
- 读取频繁的key和不易变动的key尽量不要放在一起,影响速度。(如果整个文件很小,那么忽略吧,为了这点性能添加维护成本得不偿失)
- 不要乱edit和apply,尽量批量修改一次提交!
- 尽量不要存放JSON和HTML,这种场景请直接使用json!
- 不要指望用这货进行跨进程通信!!!
2.SharedPreference里有个key为null的值
这个问题的根源在于4.X的sdk里允许了往SharedPreferences里写入key为null的值而不允许取出来,并且不仅不能取出来,甚至还在写的过程当中引发了”删除”数据这样灾难性的后果。这样是及其不合理的,所以google在后续的SDK里也对这一块的逻辑修复了。