0

我正在开发一个使用个人资料图片之类的小型社交网络应用程序。图像存储在服务器上,我设置了脚本,将每个用户的图像发送到应用程序,然后在每个用户的图像视图中显示它,然后将图像保存到外部存储。我现在实现的方式是,只要应用程序从服务器下载图像后需要图像,应用程序就会从外部存储中获取图像,除非用户上传了新图像(我认为这会比重新下载更快)每次从服务器)。但是,从外部存储获取文件似乎比从我的服务器获取文件花费的时间更长(而且服务器非常慢,在 3 层楼外的 wifi 上运行......预算限制 :))。

我的问题是,如果用户没有上传新图片,获取这些图片的最快方法是什么。我应该每次都从服务器上下载它(我假设不是)还是文件系统中有更好的地方来存储图像以加快检索速度?

4

1 回答 1

2

从 SD 卡加载图像应该非常快。一些策略:

  1. 只做一次- 当您的活动或应用程序启动时,将图像异步加载到内存中。您不想在每次视图更新时都碰到 SD 卡。
  2. 使它们变小- 如果在列表中显示缩略图时遇到性能问题,请尝试使用inSampleSize将缩略图保存为较小的图像,以减轻解码器的压力。
  3. 使用内部存储器- 我认为内部存储器更快,但它往往供不应求。您当然可以在缓存目录中存储一些缩略图以帮助加快步骤 1。
  4. 响应能力高于性能——黄金法则是要记住,绝对性能并不总是与响应能力相关。即使图像需要很长时间加载,巧妙地选择何时加载图像也会对用户对速度的感知产生很大影响。
于 2011-04-06T02:26:31.070 回答