首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bitmapfactory错误

Bitmapfactory错误
EN

Stack Overflow用户
提问于 2012-01-24 22:37:30
回答 2查看 214关注 0票数 0

我正在使用相当“标准”的代码来尝试从url下载图片,如下所示:

代码语言:javascript
复制
private Bitmap downloadBitmap(String url){

        try{
        HttpUriRequest request = new HttpGet(url);
        HttpClient httpClient = new DefaultHttpClient();
        HttpResponse response = httpClient.execute(request);

        StatusLine statusLine = response.getStatusLine();
        int statusCode = statusLine.getStatusCode();
        if (statusCode == 200) {
            HttpEntity entity = response.getEntity();
            byte[] bytes = EntityUtils.toByteArray(entity);

            Bitmap bitmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);
            return bitmap;
        } else {
            return null;
        }
        } catch (Exception e){
            e.printStackTrace();
            return null;

        }
    }
}

它在下面这一行失败:

代码语言:javascript
复制
Bitmap bitmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);

在那里它跳到catch块。

在Eclipse中使用debug,它似乎运行正常,变量'bytes‘中似乎有一堆东西,而且我传入的url确实在浏览器中显示了一个图像。

有没有人能建议一下这里可能存在的问题,或者更重要的是,我如何自己调试它( Eclipse、Java、Android的新手)?例如,我不知道如何处理e.printStackTrace();为了让我真正看到一些东西(尽管进行了大量的Googling搜索),Logcat中没有显示任何内容,Eclipse控制台中也没有显示任何内容

谢谢

EN

回答 2

Stack Overflow用户

发布于 2012-01-24 23:33:31

检查您尝试解码的图像是否不包含颜色配置文件。这事发生在我身上。BitmapFactory不知道如何处理这些错误,并且崩溃而没有出现任何有意义的错误。

要检查颜色配置文件,如果您有photoshop,只需尝试打开它,它可能会弹出一个屏幕,询问您如何处理颜色配置文件。或者,在Mac上,右键单击文件并选择“更多信息”,您可以看到一条颜色配置文件线。

票数 0
EN

Stack Overflow用户

发布于 2012-01-25 00:06:54

调试器通常会返回statement...it没有被执行,though...you可以尝试使用一个正常的函数作为well...The,最好的方法是在catch块中打印一些日志。

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

https://stackoverflow.com/questions/8988650

复制
相关文章

相似问题

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