在twitter android应用程序中,一旦listview中填充了从服务器下载的tweets/items,它就再也不会与服务器对话来获取它们。即使你关闭了这个应用程序并重新启动它,它仍然会检索相同的旧数据。Twitter是如何存储这么多数据的。它是使用数据库,将所有下载的数据存储在一个文件或缓存中。
在我的应用程序中,我有一个类似的要求。目前,我将下载的ListView数据存储在一个文件中,然后在应用程序重新启动时读取它。是否有更好的方法或遵循这种模式。
谢谢您。
最佳答案
有三种方法可以在客户端保存/持久化数据。这些是:
共享引用(不适合要求)
文件输入输出
sqllite数据库
据我所知,file-i/o和sqllite之间的性能没有太大区别。但是sqllite还有很多其他的优点。
您可以查询数据库,这比用file-i/o自己编写数据库要简单得多
数据操作更容易,也更省心(删除/更新记录等)
支持数据之间的关系!
归根结底,选择sqllite,似乎需要更多的设置工作,但您将从中受益。