如何在facebook SDK 3.0 Android中获取用户的Facebook个人资料图片

我正在使用Facebook的SDK 3.0我必须得到用户login的个人资料图片。 这是我使用的代码:

URL image_value = new URL("http://graph.facebook.com/"+id+"/picture" ); profPict=BitmapFactory.decodeStream(image_value.openConnection().getInputStream()); 

但是我没有得到理想的结果。

Solutions Collecting From Web of "如何在facebook SDK 3.0 Android中获取用户的Facebook个人资料图片"

你应该改变你的代码如下:

 URL image_value = new URL("http://graph.facebook.com/"+id+"/picture" ); 

URL的可能GET参数可以在这里find: https : //developers.facebook.com/docs/graph-api/reference/user/picture/

使用https://而不是http://我面临同样的问题。

 URL image_value = new URL("https://graph.facebook.com/"+id+"/picture" ); profPict = BitmapFactory.decodeStream(image_value.openConnection().getInputStream()); 

如果您尝试在应用中显示个人资料照片,请使用Facebook SDK中的ProfilePictureView

参考这个

只要调用setProfileId(String profileId)就可以了。

它会照顾显示图像。

 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(); } 

使用Facebook的sdk的ProfilePictureView

你可以在一个线程中做这样的事情:

 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(); 

我希望它能帮助你。

尝试这个..

  try { imageURL = new URL("https://graph.facebook.com/" + id+ "/picture?type=large"); Log.e("URL", imageURL.toString()); } catch (MalformedURLException e1) { // TODO Auto-generated catch block e1.printStackTrace(); try { bitmap = BitmapFactory.decodeStream(imageURL .openConnection().getInputStream()); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } ProfileDp.setImageBitmap(bitmap); 

一旦你的Facebook帐户login到应用程序,只要做到:

 String url = Profile.getCurrentProfile().getProfilePictureUri(x, y).toString(); 

x和y是宽度和高度。

查看文档: https : //developers.facebook.com/docs/reference/android/current/class/Profile/