如何加速从服务器加载图像 - Android

时间:2012-11-17 16:34:58

标签: android android-asynctask

我还是Android和java的初学者。我试图通过使用AsyncTask从服务器加载图像。图像的大小约为50kb。然而,它需要几秒钟才能显现出来。以下代码用于从服务器下载映像。

    public static Bitmap getBitmapFromURL(String src) {

    try {

        URL url = new URL(src);

        HttpURLConnection connection = (HttpURLConnection) url
                .openConnection();

        connection.setDoInput(true);

        connection.connect();

        InputStream input = connection.getInputStream();
        BufferedInputStream bis = new BufferedInputStream(input);
        Bitmap myBitmap = BitmapFactory.decodeStream(bis);

        return myBitmap;

    } catch (IOException e) {

        e.printStackTrace();

        return null;

    }

有人可以告诉我如何加快这个过程。除了网络速度之外,这个过程有哪些因素?

提前谢谢。

2 个答案:

答案 0 :(得分:0)

首先,我建议你搜索图像大小减少算法。然后,您可以选择一些方法来加载图片。例如,在第一步中,您可以加载低大小的图像。之后,您可以在背景中加载正常大小的图像,并将每个缩小尺寸的图像更新为正常大小的图像。

答案 1 :(得分:0)

这是有效加载位图的绝佳资源。

Android Developer site - Loading Large Bitmaps Efficiently

它还包括一个代码示例。