使用改进

时间:2016-08-26 10:43:27

标签: android retrofit google-maps-android-api-2 offlineapps

由于离线模式,我有一个应用程序可以从API获取数据(地图上的某些点包含描述,局域网,纬度和照片列表等属性)。我不确定是否应该使用sharedPreferences或一些okHttp缓存(或​​某些ORM数据库)。 SharedPref适用于小值,不适用于对象列表。你有建议/最佳实践吗?

由于

2 个答案:

答案 0 :(得分:0)

使用图像URI将数据存储在db中。将图像存储在内存缓存中并从其URI中检索它们。改造并不支持从网络自身加载图像。如果您不想深入了解所有这些,可以使用Glide或Picasso。

Picasso保存完整图像,可以在加载时调整大小。 Glide在调整大小后缓存图像。看看适合你的情况。

直接从数据库存储和检索图像将需要过多的处理并减慢图像的加载速度,尤其是在需要大图像时。有关详细信息,请参阅Caching BitmapsDisplay Bitmaps Efficiently上的开发人员说明。

答案 1 :(得分:0)

如果您只需要显示响应,我建议您使用响应缓存。 Retrofit提供了一个漂亮而方便的响应缓存方法,您可以利用Interceptor来缓存响应。希望您使用的是retrofit最新版本2.1.0。查看this链接以获取更多信息。

如果您想执行某些操作,例如标记收藏夹等,您可以使用数据库。