i am using facebook SDK 3.0 i have to get profile picture of user login. Here is the code I use:
URL image_value = new URL(\"http://graph.facebook.com/\"+id
You should change your code following:
URL image_value = new URL("http://graph.facebook.com/"+id+"/picture" );
Possible GET parameters for the URL can be found here: https://developers.facebook.com/docs/graph-api/reference/user/picture/
You can do something like this inside a thread:
String url = "http://graph.facebook.com/"+id+"/picture";
HttpConnection conn = new HttpConnection(url);
conn.openConnection();
Drawable d = Drawable.createFromStream(new BufferedInputStream(conn.getInputStream()), "image");
conn.close();
I hope it help you.
Use https:// instead of http:// i faced the same problem.
URL image_value = new URL("https://graph.facebook.com/"+id+"/picture" );
profPict = BitmapFactory.decodeStream(image_value.openConnection().getInputStream());
Once your facebook account is logged into the application, simply do:
String url = Profile.getCurrentProfile().getProfilePictureUri(x, y).toString();
x and y are width and height.
See the doc : https://developers.facebook.com/docs/reference/android/current/class/Profile/
String id = user.getId();
try {
URL url = new URL("http://graph.facebook.com/"+ id+ "/picture?type=large");
String image_path = uri.toString();
System.out.println("image::> " + image_path);
}
catch (MalformedURLException e) {
e.printStackTrace();
}
If you are trying to display profile pic in your app, use ProfilePictureView
from Facebook SDK.
Refer This
Just call setProfileId(String profileId)
on it.
It will take care of displaying the image.