Android:从服务器检索图像

时间:2015-06-23 06:45:15

标签: android image sqlite

我正在构建一个Android应用程序,它需要将图像显示为将从服务器检索的翻转视图。我考虑了两种方法

  1. 从服务器URL检索图像,然后显示OR
  2. 将图像存储在服务器(MySQL)的db中,然后从android应用程序的sq-lite中检索它
  3. 我的问题是,考虑到所有方面(性能等),哪种方法会更好?

    也欢迎任何其他更好的方法:)

3 个答案:

答案 0 :(得分:3)

这取决于您要使用图像显示的应用程序和产品,如果它们不经常更新,那么最好使用缓存来获得更快的用户体验,但如果数据是监管更新的,之前的数据会被过滤,那么总是使用网络加载。

您可以在数据库中存储最新的10-20个条目的另一种方法,一旦打开应用程序,他就可以看到一些数据和新数据被下载,这种方法可以让用户参与,不要将它们留给您的应用程序只是因为他们每次都看到装货。

对于图像缓存目的,可以使用各种好的库,这些库是用于多个图像下载以及缓存目的的稳定解决方案。 UniversalImageLoaderpicassoVolley

答案 1 :(得分:1)

  1. 您在本地存储图像并从本地存储加载到您的应用程序(这在后台线程中发生)

  2. 您可以在需要时通过在后台获取图像来更新本地存储,然后从本地存储中触发加载(这也发生在后台线程中)

  3. 通过这种方式,您因为互联网连接缓慢或丢失而无法获得ANR(应用程序无响应),并且您将能够在没有连接的情况下显示图像。

答案 2 :(得分:1)

一种好的方法可以是按需本地存储本地图像,并将其保留在缓存中,如果图像将来发生变化,您可以使缓存无效并下载新图像。

我在一个项目中使用了一个库,可以帮助我在后台下载图像,如果先前存储或者使缓存无效,还允许您自动从缓存加载图像。该库是android-query,以下是use的示例。