我正在开发一个 android应用程序,当用户通过Facebook登录时,他的个人资料图片会被存储。然后,用户将逐一显示已安装该应用程序的fb好友的个人资料照片。首先,在点击下一个按钮时显示一个朋友的照片,显示下一个朋友的照片。这一直持续到所有朋友的图像都已显示给用户或用户已跳过该部分。
首先,我想到将所有图像存储在我的数据库中,然后在用户按下下一个按钮时逐个检索它们。但这样做会导致性能非常慢,因为每次必须向用户显示图像时我必须点击数据库。
另一种方法是将图像存储在本地驱动器中,并将每个图像的位置存储在数据库中。
请考虑庞大的用户群,详细说明如何实现这一目标以及此案例中的性能问题? 如果可能的话,还建议任何其他实现目标的方法。
我正在使用WAMP。
提前致谢。
答案 0 :(得分:2)
图片在下载后存储在应用程序缓存中。
当用户第一次登录到fb时,它将下载图像。
第二次它会从缓存中获取它们,除非它是一个新图像。
在达到某个MB限制时清除缓存并保持较小
我建议使用Google Volley库从网络中获取图像,因为正确设置可以使缓存中的图像过期/清除。
还有其他用于图像加载和处理的库,例如Universal Image loader和Picasso,但Volley也可以用于从网络中获取数据。