照片存储的最佳做法

时间:2017-12-24 15:02:19

标签: android storage photos

我想创建一个与Instagram相同的Android应用程序,这意味着每个配置文件都有一个照片库。

我的问题是存储和检索这些照片。我想知道数据库(MySQL)中照片存储的最佳实践是什么,更确切地说:

  • 我应该存储原始尺寸的照片(例如2mb)还是调整尺寸较小的照片?
  • 我应该用两个版本(较小尺寸的照片和正常尺寸的照片)存储它们吗?

3 个答案:

答案 0 :(得分:0)

我认为最佳做法是将照片存储在数据库中。 在数据库中,您可以将照片的链接/位置存储为照片的URL。 关于较小尺寸的照片,它取决于您要完成的任务,因为现在您需要更多的空间来支付并且可能更少的带宽,因为您可以放置​​缩略图并让它仅在用户点击时加载原始大小。所以这一切都取决于你想要什么以及如何实现

答案 1 :(得分:0)

存储图像的最佳做法是将它们作为文件缓存,而不是将它们保存在数据库中。您可以将它们保存为sql db中的blob,但它们应该小于32px乘32px以使事情顺利进行。其他所有内容都应保存为文件。让我举一个WhatsApp的例子。 WhatApp将大部分图像缓存为文件,并仅将像素化缩略图保存在数据库中。

答案 2 :(得分:0)

在数据库中保存图像看起来有点矫枉过正,不需要它。 保存在磁盘上应该没问题。

虽然你应该专注于你的业务逻辑&将此留给图像库,这些库可以完成这些工作。做最好的记忆和性能。

一些着名的图书馆是:

几乎每个图书馆都会为您做很多事情,例如:

  • 在内存缓存(LRU Cache中 - 以便不阻止UI线程执行I / O操作 从磁盘操作
  • 磁盘缓存 - 保存图像以便进一步保存 应用程序会话,当内存缓存达到其限制时也必须如此 被驱逐出去。,你可以指定磁盘缓存大小。
  • 各种图像缩放策略
  • 图片转换
  • 清理位图以释放内存
  • 后台线程上的网络操作
  • 后台线程管理& 等...

我的建议是使用其中一个图片库