2013-12-21 2 views
0

Imgur에서 사진을 업로드하고 API 사이트에서 제공된 예제를 사용하여 링크를 얻을 수있었습니다. 내가 할 수없는 것은 URL에서 Bitmap 또는 Drawable을 검색하는 것입니다. 그리고 그것에 관한 문서가 없습니다.imgur에서 이미지 표시

URL url= "http://imgur.com/1awAsRh" 
Bitmap mPic = BitmapFactory.decodeStream(url.openConnection().getInputStream()); 

mPic이 null입니다.

나는, 같은 패턴 항상

직접 이미지 URL을 얻을 수있는 방법이 있나요입니다 ... 사이트에 이미지 URL 내가 사진을 PNG JPG 등이 있습니다 참조 http://i.imgur.com/1awAsRh.jpg 것을 볼?

Tx 미리! (안드로이드에 필요한 4.0 이상) 백그라운드에서 물건을 위해 AsyncTask를 구현이 사용

답변

0

시도 :

class loadimage extends AsyncTask<Void, Void, Void> { 
    ProgressDialog pdLoading = new ProgressDialog(YourClass.this); 

    @Override 
    protected void onPreExecute() { 
     super.onPreExecute(); 
     pdLoading.setMessage("Loading Image..."); 
     pdLoading.show(); 
    } 

    @Override 
    protected void doInBackground(Void... params) { 
     String stringurl = "http://imgur.com/1awAsRh" 
     try { 
      Bitmap bitmap = BitmapFactory.decodeStream((InputStream)new URL(stringurl).getContent()); 
     } catch (MalformedURLException e) { 
      e.printStackTrace(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
     return null; 
    } 

    @Override 
    protected void onPostExecute(String result) { 
     super.onPostExecute(result); 
     pdLoading.dismiss(); 
     // do what you want with your bitmap 
     return null; 
    } 
} 

을 그리고 다음에 다음과 같이 호출하여 onCreate :

new loadimage().execute(); 

또한 매니페스트에 다음이 있는지 확인해야합니다.

<uses-permission android:name="android.permission.INTERNET" /> 
+0

이 내가 한 그대로이지만, (JSON에서) 링크 PARAM를 사용할 수있는 아이디 PARAM을지고의 선 비트 맵 비트 맵 = BitmapFactory.decodeStream ((InputStream) 새 URL (stringurl) .getContent()); return null. img가 http://i.imgur.com/1awAsRh.jpg이고 http://imgur.com/1awAsRh가 아니기 때문에 그렇게해야합니다. –