我没有从URL获取图像?

时间:2013-06-08 06:43:21

标签: android bitmap

我有一个URL,我想转换成位图,但我没有得到o / p。我用某种方式对这个东西进行排序,但仍然没有得到任何东西。

我在Stack Overflow上的前一个答案中搜索解决方案,但我也遇到了问题。我在做什么:

URL url = new URl("http://www.XYZ.com/image.jpg"); 

并将此内容放入

BitmapFactory.decodeStream(_ _ _); 

我该怎么做才能解决它?

3 个答案:

答案 0 :(得分:0)

private Drawable loadImageFromWeb(String url) {
        try {   
            InputStream is = (InputStream) new URL(url).getContent();
            Drawable d = Drawable.createFromStream(is, "src name");
            return d;
        } catch (Exception e) {
            return null;
        }
    }   

答案 1 :(得分:0)

这是怎么回事?它在我尝试时有效。

URL url = new URL("http://www.XYZ.com/image.jpg");
Object content = url.getContent();
InputStream is = (InputStream) content;
//drawable
Drawable drawable = Drawable.createFromStream(is, "src");
//bitmap
Bitmap bitmap = BitmapFactory.decodeStream(is);

答案 2 :(得分:0)

长期但功能性的解决方案

    try 
    {    
        InputStream inn = OpenConnection(URL);
        Bitmap bmp = BitmapFactory.decodeStream(inn);
        inn.close();    
    } 
    catch (IOException e1) {    
        e1.printStackTrace();
    }

    public InputStream OpenHttpConnection(String url) {
       InputStream in = null;
       int response = -1;

       URL url = new URL(url);
       URLConnection conn = url.openConnection();

       try {
           HttpURLConnection httpConn = (HttpURLConnection) conn;
           httpConn.setAllowUserInteraction(false);
           httpConn.setInstanceFollowRedirects(true);
           httpConn.setRequestMethod("GET");
           httpConn.connect();
           response = httpConn.getResponseCode();

           if (response == HttpURLConnection.HTTP_OK) {
            in = httpConn.getInputStream();
           }
       } 
       catch (Exception ex) 
       {
        ex.printStackTrace();
       }
    return in;
  }