我必须使用我的应用程序中的图像创建发布到facebook的帖子 存储在应用程序中的图像。
我的所作所为:
使用Request.newUploadPhotoRequest
将图片上传到用户照片并获取照片ID
来自Facebook。例如,我收到"637590962949508"
。
创建帖子并发送至Facebook:
Request(session, "me/feed", postParams, HttpMethod.POST, callback)
。
在postParams
我还将postParams.putString("object_attachment", photoId)
放在photoId
= "637590962949508"
回应是:
{
Response: responseCode: 200,
graphObject: GraphObject{
graphObjectClass=GraphObject,
state={
"id":"100000958302790_637591166282821"
}
},
error: null,
isFromCache:false
}
正如我所看到的,Facebook告诉我一切都好。结果:我可以在我的Feed中看到帖子,但图片为空(空方块)。但图像存在于照片中。
哪里出错?
答案 0 :(得分:1)
我和facebook有同样的问题。在您的情况下,Facebook无法显示图像的缩略图,但是当您点击帖子时,您可以在全屏视图中看到您的照片。 要更正您的帖子,您必须通过调用图形api“/ {photoId}”(https://developers.facebook.com/docs/graph-api/reference/photo)获取上传照片的详细信息,您将获得类似于以下内容的JSON:
{
"created_time" = "";
from = {
id = 100002300000000;
name = "User User";
};
height = 500;
id = 62902XXXXX;
images = (
{
height = 500;
source = "https://scontent-b.xx.fbcdn.net/hphotos-frc3/t1.0-9/XXXX.jpg";
width = 500;
},
{
height = 480;
source = "https://scontent-b.xx.fbcdn.net/hphotos-frc3/t1.0-9/p480x480/XXXX.jpg";
width = 480;
},
{
height = 320;
source = "https://scontent-b.xx.fbcdn.net/hphotos-frc3/t1.0-9/p320x320/XXXX.jpg";
width = 320;
},
{
height = 130;
source = "https://fbcdn-photos-h-a.akamaihd.net/hphotos-ak-frc3/t1.0-0/XXXX.jpg";
width = 130;
},
{
height = 225;
source = "https://scontent-b.xx.fbcdn.net/hphotos-frc3/t1.0-9/p75x225/XXXX.jpg";
width = 225;
}
);
link = "https://www.facebook.com/photo.php?fbid=629020720517945&set=a.628961963857154.1073741825.100002300681060&type=1";
picture = "https://fbcdn-photos-h-a.akamaihd.net/hphotos-ak-frc3/t1.0-0/1029_XXX.jpg";
source = "https://scontent-b.xx.fbcdn.net/hphotos-frc3/t1.0-9/1029_XXX.jpg";
width = 500;
}
从响应中你应该采用“images”数组,然后使用缩略图“source”链接之一。 您可以使用“/ me / feed”API(https://developers.facebook.com/docs/graph-api/reference/user/feed/)上的“图片”键添加到帖子正文的此链接。
注意:您必须调用“user_photos”权限才能获取照片信息。