0
votes

I want to download an image from facebook but my Bitmap is always null.

[
private void extractFacebookIcon(String id)
  {
    Bitmap bitmap = null;

     InputStream in = null;
     try
     {
       StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
       StrictMode.setThreadPolicy( policy );

      URL imageURL = new URL("http://graph.facebook.com/"+id+"/picture?type=large");

       in = ( InputStream) imageURL.getContent();

       bitmap = BitmapFactory.decodeStream( in );
       mFacebookIcon = bitmap;
     }
     catch(Throwable e)
     {

     }]

When I use http://graph.facebook.com/"+id+"/picture?type=large in browser, my Chrome redirects me on this link and the picture is opening and bitmap can read it.

("https://fbcdn-profile-a.akamaihd.net/hprofile-ak-frc3/t1.0-1/c0.0.1.00.1.00/p100x100/969878_592016040843290_1511913922_t.jpg)

How to solve this problem and read the first link then bitmap was not null?

1
don't run network operations on the main thread! Overriding the default thread policy is very very sloppyslinden77

1 Answers

1
votes

I think it's because Facebook send your application a redirect to another URl. Have a look at http://www.mkyong.com/java/java-httpurlconnection-follow-redirect-example/ to see how you can handle redirects (HttpRedirectExample code).