编辑:在这篇文章的末尾回复。
多亏了内置的Facebook SDK的功能Request()
.,我正在尝试获取一个Facebook用户的头像
我正在使用/me/picture
调用来获取头像并将其转换为Bitmap
.
调用运行正常,但我不知道如何解释和解析从Facebook返回的结果
下面是我得到的JSON
:
{ "FACEBOOK_NON_JSON_RESULT“:"����\u0000\u0010JFIF\u0000\u0001\u0002\u0000\u0000\u0001\u0000\u0001\u0000\u0000��\u0000\u0004*\u0000��\u0000C\u0000\u0006\u0004\u0005\u0006\u0005\u0004\u0006\u0006\u0005\u0006\u0007\u0007\u0006\b”}
我认为这应该是代表头像的图片,但我不知道现在该怎么做。
如果有人能告诉我如何解码它,将它转换成位图,或者它是什么类型的数据,我将不胜感激。
备注:除了Request()之外,我不想使用任何其他函数,比如DecodeStream()或AsyncTask
这就是答案:
在创建新的重定向时,需要向false
添加“Request()
”参数
Bundle params = new Bundle();
params.putBoolean("redirect", false);
这将返回正确的图片URL:
{
"data":{
"is_silhouette":false,
"url":"https:\/\/fbcdn-profile-a.akamaihd.net\/hprofile-ak-xpa1\/v\/t1.0-1\/p100x100\/10312434_10152395442477210_2933994167675146084_n.jpg?oh=f3c8cb920c97fcfa4dc5e17462445cbf&oe=54404A3A&__gda__=1412730795_5f288e34e5f6e63cb1c3791dcb142880"
}
}
发布于 2014-07-31 18:11:47
试试这个:
ImageView user_picture;
userpicture=(ImageView)findViewById(R.id.userpicture);
URL img_value = null;
img_value = new URL("http://graph.facebook.com/"+id+"/picture?type=large");
Bitmap mIcon1 = BitmapFactory.decodeStream(img_value.openConnection().getInputStream());
userpicture.setImageBitmap(mIcon1);
其中ID是您的配置文件ID之一。
有关更多详细信息,请查看以下内容:
https://stackoverflow.com/questions/25055159
复制相似问题