SQLite or SharedPreferences for persistent data storage?

生来就可爱ヽ(ⅴ<●) 提交于 2019-11-26 14:45:46

问题


For persistent storage of data is there any distinct advantage of using a SQLlite database over SharedPreferences or vice versa? Currently my application data is only a couple of kilobytes in size, though it could conceivably rise to ten times that size in the future. I can't find anywhere that states how much storage is available using SharedPreferences but would imagine this would be one limitation of using it? Is there any difference in speed between the two methods? I'm looking to weigh up the pros and cons of those two storage methods.


回答1:


Off the top of my head:

SharedPreferences:

Pro:

  • Lightweight
  • Quick and easy to use
  • Easy to debug
  • Config file can be edited by hand if need be

Con:

  • Slow when dealing with lots of data
  • Not helpful when the data is more than a simple key/value affair
  • Entire file needs to be read and parsed to access data
  • Takes up more space, each entry has a considerable amount of ASCII data around it, and all the data itself is ASCII too.

SQLite:

Pro:

  • Scales nicely
  • Changes don't require rewriting the entire data file from scratch
  • Powerful queries

Con:

  • More code to write
  • More heavyweight (code and memory), overkill when dealing with a little bit of data


来源:https://stackoverflow.com/questions/4909701/sqlite-or-sharedpreferences-for-persistent-data-storage

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!