我想知道将api中的图像和api存储到房间db中的最佳方法。我正在制作一个运动应用程序,该应用程序从api接收数据和图像。当我处于联机模式时,将使用api提供的url加载图像,但是在脱机时,应在脱机模式下存储图像并从数据库中检索图像。我想知道如何将图像的URL转换为图像并将其以离线模式加载。
PS:将保存100多张图像,room db是否适合该图像?谢谢。
答案 0 :(得分:2)
继续L2_Paver的答案。
您也可以出于相同目的检查Glide。您可能要考虑每个库的优缺点,这些库可以很好地满足您的目的。这个答案可能会为您提供有关比较的更多见解。 Picasso v/s Imageloader v/s Fresco vs Glide
答案 1 :(得分:0)
使用毕加索将图像存储在缓存中
首先将其添加到您的gradle中。
implementation 'com.squareup.picasso:picasso:2.71828'
然后您可以从网址中调用图片并将其存储在缓存中。
Picasso.get().load(YOUR_IMAGE_URL).error(R.drawable.error_img).placeholder(R.drawable.loading_image).into(YOUR_IMAGEVIEW);
Picasso只会下载一次图像,如果再次调用相同的URL,它将被重定向到缓存,而不是再次下载(或多或少)。
注意:检查配置文件以查看数据消耗。