首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从URL显示图像,Android应用程序运行速度极慢

从URL显示图像,Android应用程序运行速度极慢
EN

Stack Overflow用户
提问于 2014-01-20 07:24:00
回答 4查看 1.8K关注 0票数 0

我试图在我的应用程序中显示来自URL的图像,但当(仅当)位图显示时,应用程序变得太慢。应用程序运行正常,但当我加载图像时,它会变得非常慢。有人能帮上忙吗?

所以我有一个名为ImageDownload的类,它负责下载,在我的片段中有:

代码语言:javascript
复制
new ImageDownload((ImageView) login_image, this.getActivity().getApplicationContext(),"login_image")
        .execute(path);

这是我的download Class:

代码语言:javascript
复制
public class ImageDownload extends AsyncTask<String, Void, Bitmap> {
private Context mContext;
private String filename;
ImageView bmImage;

public ImageDownload(ImageView bmImage, Context mContext, String filename) {
    this.bmImage = bmImage;
    this.mContext = mContext;
    this.filename = filename;
}

protected Bitmap doInBackground(String... urls) {
    String urldisplay = urls[0];
    Bitmap mIcon11 = null;
    try {
        InputStream in = new java.net.URL(urldisplay).openStream();

        mIcon11 = BitmapFactory.decodeStream(in,null,null);
        //EDIT:

        in.close();

        // The isuue is not soved yet 

    } catch (Exception e) {

        e.printStackTrace();

    }
    return mIcon11;
}

protected void onPostExecute(Bitmap result) {

    bmImage.setImageBitmap(result);

}

}

EN

回答 4

Stack Overflow用户

发布于 2014-01-20 13:04:32

然后是ImageBitmap的大小问题&平板电脑的内存大小。在内存中加载ImageBitmap时会占用太多内存。你可以通过查看日志来检测这一点,System.gc()被调用的频率有多高,因为系统面临太频繁的页面未命中而不是页面命中,这几乎就像是颠簸问题。我确信系统会频繁地调用.gc(),而且由于System.gc()是在GUI线程中调用的,这会干扰用户界面体验。

票数 1
EN

Stack Overflow用户

发布于 2014-01-21 02:42:10

你应该使用Google的Volley库

票数 0
EN

Stack Overflow用户

发布于 2014-01-21 06:47:22

使用Picasso。这很简单,很酷。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21224025

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档