2013-12-21 5 views
0

Я смог загрузить изображение в Imgur и получить ссылку, используя пример, приведенный на сайте API. То, что я не могу сделать, это извлечь Bitmap или Drawable из URL. И я не нахожу документацию об этом.Показать изображение из imgur

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

mPic - null.

Я вижу, что изображение URL на сайте http://i.imgur.com/1awAsRh.jpg я вижу изображение может быть PNG JPG и т.д. ...

Есть ли способ, чтобы получить прямой URL изображения, это всегда та же картина?

Tx заранее!

ответ

0

Попробуйте использовать это, который реализует AsyncTask делать вещи в фоновом режиме (требуется для Android 4.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

это именно так, как я сделал, но Bitmap растровые линии = BitmapFactory.decodeStream ((InputStream) новый URL (stringurl) .getContent()); возвращение null. Это должно быть потому, что img является http://i.imgur.com/1awAsRh.jpg, а не http://imgur.com/1awAsRh –

0

Я решаю d это.

С Imgur страницы API: https://api.imgur.com/models/image

вместо того, чтобы идентификатор из параметров, я могу использовать ссылку из параметров (From JSON)

Смежные вопросы