android - 使用 Android 进行移动应用程序开发

标签 android database facebook performance mobile-application

我正在开发一个android应用程序,当用户通过facebook登录时,他的个人资料图片将被存储。然后用户会一一看到安装了该应用程序的 Facebook 好友的个人资料图片。首先,显示一个 friend 的照片,然后单击下一个按钮,显示下一个 friend 的照片。这一直持续到所有 friend 的图像都已向用户显示或用户已跳过该部分为止。

首先,我想到将所有图像存储在数据库中,然后在用户按下“下一步”按钮时一张一张地检索它们。但这样做会导致性能非常慢,因为每次必须向用户显示图像时,我都必须访问数据库。

另一种方法是将图像存储在本地驱动器中,并将每个图像的位置存储在数据库中。

请详细说明如何实现这一点以及考虑到大量用户群的情况下的性能问题? 如果可以的话,还建议实现该目标的任何其他方法。

我正在使用 WAMP 来达到此目的。

提前致谢。

最佳答案

图片下载后会存储在应用程序缓存中。

当用户第一次登录 fb 时,它将下载图像。

第二次它将从缓存中获取它们,除非它是新图像。

当缓存达到一定的MB限制时清除缓存并保持较小的大小

我建议使用 Google Volley 库从网络获取图像,因为当设置正确时,您可以从缓存中过期/清除图像。

还有其他用于图像加载和处理的库可供考虑,例如通用图像加载器和 Picasso,但 Volley 也可用于从网络获取数据。

关于android - 使用 Android 进行移动应用程序开发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32527039/

相关文章:

android - 错误 : unknown type name 'class' NDK CDT JNI

android - 如何在 Android 对话框中显示版权符号?

javascript - AngularJS 从 SQLite 数据库中填充选择下拉列表

database - SQL Server 客户端应用程序

ruby-on-rails - Omniauth - Facebook 应用程序在 Facebook 身份验证成功后不运行回调 url

android - 当 Recyclerview 中的 Edittext 滚出屏幕时隐藏键盘

database - 单元测试数据库转换有什么好的策略或工具? (不是单元测试数据库,而是转换)

Facebook api 支持保存的项目吗?

Android:打开短信 Intent

android - 跨多个设备同步时间戳