下载Bitmap有时会返回null

时间:2011-11-09 18:36:49

标签: android

我有一些代码可以使用此方法从Web检索图像

public  Bitmap downloadFile(String fileUrl){
    URL myFileUrl =null;          
    try {
        myFileUrl= new URL(fileUrl);
    } catch (MalformedURLException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    try {
        HttpURLConnection conn= (HttpURLConnection)myFileUrl.openConnection();
        conn.setDoInput(true);
        conn.setReadTimeout(500000000);
        conn.connect();
        InputStream is = conn.getInputStream();
        BitmapFactory.Options options=new BitmapFactory.Options();
        options.inSampleSize = 8;

        return BitmapFactory.decodeStream(is,null,options);

    } catch (IOException e) {
        Log.e("log_tag", " Download image failed"+e.getMessage());
        e.printStackTrace();
    }
    return null;
}

但是,有时它会返回null而没有错误,有时它会起作用。

我尝试将超时设置为大数,但仍然没有错误。

1 个答案:

答案 0 :(得分:1)

在catch子句中尝试这段代码。它将显示带有错误的toast msg。你可能不会一直出去。

catch(IOException e) {
Log.e("IOException", e.getMessage());

// Toaster on high ----------------- //

Context context = getApplicationContext();
CharSequence text = "IOException:  " + e.getMessage();
int dur = Toast.LENGTH_LONG;
Toast.makeText(context, text, dur).show();