Javascript 用于缓存JSON的共享首选项与SQLite
在Android应用程序生命周期之间,保存JSON的最佳方式是什么?现在我正在使用rest服务返回JSON。我使用这个JSON作为javascript图表的数据提供者,我正在加载到大量的Web视图中。我不想不断地点击服务器来请求JSON,而是希望缓存它,并在需要时检索它,允许用户手动更新/刷新数据Javascript 用于缓存JSON的共享首选项与SQLite,javascript,android,json,sqlite,Javascript,Android,Json,Sqlite,在Android应用程序生命周期之间,保存JSON的最佳方式是什么?现在我正在使用rest服务返回JSON。我使用这个JSON作为javascript图表的数据提供者,我正在加载到大量的Web视图中。我不想不断地点击服务器来请求JSON,而是希望缓存它,并在需要时检索它,允许用户手动更新/刷新数据 我是应该使用共享首选项还是应该持久化到SQLite表?我主要关心的是,即使在应用程序被终止/重新启动之后,仍然能够检索存储的数据。我也有大量的JSON,我想知道哪一个是最有效的 这取决于你的数据有多大
我是应该使用共享首选项还是应该持久化到SQLite表?我主要关心的是,即使在应用程序被终止/重新启动之后,仍然能够检索存储的数据。我也有大量的JSON,我想知道哪一个是最有效的 这取决于你的数据有多大 共享引用 在键值对中存储私有基元数据 如果您只想存储2-3个变量和整数,boolean SharedReferences就可以了 Sqlite 将结构化数据存储在专用数据库中
如果您的数据包含很多项,比如填写ListView,那么最好实现SQLite,因为数据存储的顺序更为有序,您可以为这些数据设置id,例如,您可以将id设置为今天的日期,并检查当前日期是否大于id,然后您可能需要随之刷新。有一些功能强大的类可以帮助您喜欢CursorAdapter和Cursor,如果您想使事情变得简单,那么您应该将JSON响应字符串保存到 SharedReference将密钥关联到JSON 很容易从SharedReference中检索。 您只需检查特定密钥是否存在于ShredReference中, 如果没有,那么您可以点击服务器,否则从ShredPrefence获取JSON响应
当用户手动更新时,更新SharedReference中的JSON响应 对于小数据,您可以使用SharedReferences;对于大数据,您可以使用Sqlite