Android中通过url获取图片Bitmap

本文提供了一个在Android环境中,从指定网址获取图片Bitmap的方法,包括必要的代码实现及异常处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Android中通过url获取图片Bitmap

这里直接上代码:

/**
     * Author:FounderWatts
     * context:调用方上下文,Activity.this
     * urlStr:指定的网址,如:“http://www.baidu.com”
     * */
    public Bitmap getBitmapFromUrl(Context context,String urlStr){
        URL url = null;
        Bitmap bitmap = null;
        HttpURLConnection connection = null;
        try{
            url = new URL(urlStr);
            connection = (HttpURLConnection)url.openConnection();
            connection.setReadTimeout(5000);
            connection.setConnectTimeout(5000);

            InputStream inputStream = new BufferedInputStream(connection.getInputStream());
            bitmap = BitmapFactory.decodeStream(inputStream);
            inputStream.close();

        }catch (Exception e){
            e.printStackTrace();
            Resources resources = context.getResources();
            bitmap = BitmapFactory.decodeResource(resources, R.drawable.ic_launcher);
        }finally {
            connection.disconnect();
        }
        return bitmap;
    }

注意到整个方法中没有声明 connection.connect(); 现在大部分的说法是在必要的情况下connect()方法会被隐式调用,不过我查看API源码,发现HttpURLConnection本身也是继承自URLConnection的抽象类,它并没有实现connect()抽象方法。至于具体connect()的调用情况我将尽快在我后面的博客给出。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值