加载图片时遇到的问题

加载图片时遇到的问题
图片是以url地址(网址)的形式存放在数据库中的,使用是要转化为bitmap再使用。
原本这个转化好好的,今天突然挂了,通过逐步排查,发现问题出现在url转换为bitmap的过程中。

使用真机测试发现,要么加载不出来,要么要等很长时间,使用Androidd Studio自带的虚拟机却一下加载出来了

这是转换过程的源码

img


为了搞清楚是哪一句出了问题,我为每句话添加了Log

img


运行后,使用真机的转换过程

img


运行后,使用虚拟机的转换过程

img


到这里已经知道是哪句出了问题,但是不知道原因和解决办法,求各位指点,为什么在手机上会这样,网络原因还是图片网址有问题,今天之前都好好的没有任何问题

以下内容部分参考ChatGPT模型:


建议提问者先检查图片的url是否正确,是否可以通过浏览器打开。如果url没有问题,可以尝试以下代码来将url转换为bitmap:

public static Bitmap getBitmapFromUrl(String urlString) {
    try {
        URL url = new URL(urlString);
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        connection.setDoInput(true);
        connection.connect();
        InputStream input = connection.getInputStream();
        Bitmap bitmap = BitmapFactory.decodeStream(input);
        return bitmap;
    } catch (IOException e) {
        e.printStackTrace();
        return null;
    }
}

使用方法:

String imageUrl = "http://example.com/image.jpg";
Bitmap bitmap = getBitmapFromUrl(imageUrl);
if (bitmap != null) {
    // Do something with bitmap
} else {
    // Handle error
}

注意:上述代码需要在子线程中执行。如果需要在主线程中使用,请自行使用Handler或AsyncTask等方式来处理。


如果我的建议对您有帮助、请点击采纳、祝您生活愉快

用第三方库吧,别自己处理了,比如glide。