Android编程使用大量图像

时间:2016-03-10 02:06:46

标签: android

Android开发中的新手。只是寻找建议。我想开发一个Android应用程序,它将向用户显示大量图像(点击或滑动时)。换句话说,用户应该能够浏览应用程序提供的大量图像(而不是用户手机上)。一个例子是现有的Android应用程序,用于鼓舞人心的报价等。

我想知道在开发人员端保存所有这些图像的位置? 允许用户浏览这些图像的最快方法是什么? 是否有任何在线示例/教程?

我看过很少的教程,但它们仅用于5-6张图片,但我需要提供的用户是500-1000张图片甚至更多(如果应用程序成功,将会添加)。

任何指针都会受到高度赞赏。

2 个答案:

答案 0 :(得分:0)

可能的方法是

  • 将这些图像存储在服务器上并从服务器URL加载。

您可以使用Picasso加载带有以下代码的图像

com.squareup.picasso.Picasso.with(context).
    load(imaegPath).
    placeholder(R.mipmap.ic_launcher).
    into(imageView);

此处imagePath是图片的网址。

有关Picasso阅读this answer

的更多详情
  

但为此你需要互联网连接。

注意:这可能不是加载图片的最快方式,因为它取决于互联网连接。

  • 您可以将图像存储在resources目录中并加载图像。 imageview.setImageResource(R.id.image1);
  

但如果图片尺寸很大,那么您的应用尺寸就会相应。

答案 1 :(得分:0)

似乎你需要大尺寸的内存和控制策略。

首先,我建议你拿到你的记忆课。 memoryClass显示您的应用程序可以使用多少内存。使用此值,您可以确定图像缓存量。

ActivityManager am = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
int memoryClass = am.getMemoryClass();
Log.v("onCreate", "memoryClass:" + Integer.toString(memoryClass));

另请参阅:Detect application heap size in Android


第二,Android 2.2和2.3的ImageView有内存泄漏。 (嗯,这些版本现在很老了,很难找到)

Android bitmap imageview memory leak

您可以下载此示例: https://github.com/StanleyKou/GettyImageViewer
在这个例子中,您可以看到如何将picasso库与来自网站的许多图像一起使用。