在Android中处理图像的正确方法?通过使用Firebase

时间:2019-07-04 03:06:08

标签: android firebase firebase-storage image-quality

我有10,000张全尺寸图片,因此每张图片约为4MB。

我想使用// For first API pm.globals.set('AuthorizationKey', 'Authorization'); // For second API pm.globals.set('AuthorizationKey', undefined); pm.globals.set('AuthorizationValue', 'Basic xxxxxx'); firebase storagedatabase在android应用中显示图像。

我的问题是

案例1。我是否必须在Firebase存储中保存缩小尺寸的图像?

案例2。我是否仅将原始的大尺寸图像保存在Firebase存储中并加载低质量的小尺寸图像?

我已经使用Glide实现了案例1。这不是问题。 情况2呢?可以吗?

3 个答案:

答案 0 :(得分:2)

  

案例1.我必须在Firebase存储中保存缩小尺寸的图像吗?

这完全取决于你。您要保存原始文件或缩小图像。但是请考虑以下事实。

  • 您需要更多存储空间来存储原始大小(限额后需要付费计划)
  • 更多服务器带宽将用于大图像
  • 用户的Internet数据。 (大图片会消耗更多数据)
  

案例2。我是否仅将原始大尺寸图像保存在Firebase存储中   并加载低质量的小尺寸图像?

有两种情况

  1. 在firebase中,您需要存储两种类型的图像。 (缩略图和原始图像)。因此,请先加载缩略图,然后再选择是否要下载。然后获取原始图像。
  2. 您可以在加载时使用Glide或Picasso缩小图像,可以轻松调整图像大小。

答案 1 :(得分:0)

尽管情况因情况而异,但我相信/假设有10,000张图片,您正在制作的应用程序的主要功能是照片。

保存完整尺寸的图像。由于用户不会同时看到全部10,000,因此您还应该浏览JetPack的分页库。这是链接https://developer.android.com/topic/libraries/architecture/paging.html

仅显示/加载所需的内容。优化将成为诀窍。

答案 2 :(得分:0)

Firebase将在bandwidth上付款,它们可以免费使用某些带宽限制,因此,如果您使用小尺寸或大尺寸的更多图像(10K),则可以使用。如果用户加载了该图像,则需要升级Firebase计划。

解决方案是,您应该以低成本购买任何服务器,并上传具有缩略图,中型,大型和原始尺寸等各种尺寸的所有图像,因此对于每种情况下快速加载都是有帮助的。