1.引言
数据存储有很多种方式,文件,数据库,SharedPreferences,如何选择正确的存储方式至关重要,不然会影响cpu,内存等性能问题
2.正题
如何选择合适的存储方式从以下几点考虑:
image.pngAndroid中数据存储的方式:
- SharedPreferences
- ContentProvider
- 文件
- 数据库
2.1 SharedPreferences 缺点:
参考:https://juejin.im/entry/597446ed6fb9a06bac5bc630
-
SharedPreferences多线程操作安全,跨进程不安全。由于没有使用跨进程的锁。频繁的跨进程操作,会导致损坏
-
读取速度慢 100kb的文件,读取需要50ms-100ms,可以提前在异步线程中加载好
-
全量写入,即使改动一点点,也会将未改动的从新书写一遍
腾讯开源的MMKV框架,极大的改善了上述的问题,采用Protocol Buffer 代替 XML、支持增量更新
Protocol Buffers
是一种轻便高效的结构化数据存储格式,可以用于结构化数据序列化,很适合做数据存储或 RPC 数据交换格式。它可用于通讯协议、数据存储等领域的语言无关、平台无关、可扩展的序列化结构数据格式。
网友评论