首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用Facebook ios sdk 3.0将5张图片附加到Facebook提要帖子

如何使用Facebook ios sdk 3.0将5张图片附加到Facebook提要帖子
EN

Stack Overflow用户
提问于 2012-09-11 16:40:05
回答 3查看 4.7K关注 0票数 17

我试着在用户的feed上发布类似这样的内容(它最初只显示一个图片,但当你点击“显示更多”时,你会看到所有五个图片)

我的代码如下所示:

代码语言:javascript
复制
NSMutableArray *properties = [[NSMutableArray alloc] initWithCapacity:5];
NSMutableArray *media = [[NSMutableArray alloc] initWithCapacity:5];
for (MyObject *object in self.myObjects) {
    [properties addObject:[NSDictionary dictionaryWithObjectsAndKeys:object.name,@"text",
                                                                     object.link,@"href", nil]];
    NSString *imageUrlString = object.url.absoluteString;
    [media addObject:[NSDictionary dictionaryWithObjectsAndKeys:@"image",@"type",
                                                                imageUrlString,@"src",
                                                                object.link,@"href", nil]];
}
NSData *propertyData = [NSJSONSerialization dataWithJSONObject:properties
                                                       options:NSJSONWritingPrettyPrinted
                                                         error:nil];
NSString *propertiesString = [[NSString alloc] initWithData:propertyData
                                                   encoding:NSUTF8StringEncoding];
NSData *mediaData = [NSJSONSerialization dataWithJSONObject:media
                                                    options:NSJSONWritingPrettyPrinted
                                                      error:nil];
NSString *mediaString = [[NSString alloc] initWithData:mediaData
                                              encoding:NSUTF8StringEncoding];
NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:myAppID, @"app_id",
                                                                  link, @"link",
                                                                  name, @"name",
                                                                  caption, @"caption",
                                                                  propertiesString, @"properties",
                                                                  mediaString, @"media",
                                                                  description, @"description", nil];
[FBRequestConnection startWithGraphPath:@"me/feed"
                             parameters:params
                             HTTPMethod:@"POST"
                      completionHandler:completionHandler];

这只发布了一张图片,但我需要张贴所有的5个。

编辑:我们已经通过janrain engage库在一篇文章中发布了5张图片,所以这是可行的!

EN

回答 3

Stack Overflow用户

发布于 2013-07-31 02:59:16

您将需要直接使用Facebook Connect API : iOS SDK不公开这种功能。

你应该看看Graph Photo API的发布部分,它建议使用这个网址来上传图片(别忘了询问publish_stream凭证):

代码语言:javascript
复制
POST https://graph.facebook.com/USER_ID/photos

message=[optional description]
source=[the image's data]
place=[optional image's location]

在iOS Facebook Connect SDK中,假设您有一个名为Facebook的facebook实例和一个名为UIImage的图像实例:

代码语言:javascript
复制
[facebook requestWithMethodName:@"/USER_ID/photos"
                      andParams:[NSDictionary dictionaryWithObjectsAndKeys:
                                 UIImageJPEGRepresentation(image, 0.7), @"source",
                                 @"My puppy is so cute!!!", @"message",
                                 nil]
                  andHttpMethod:@"POST"
                    andDelegate:self];
票数 1
EN

Stack Overflow用户

发布于 2012-09-20 16:38:47

好的,新的想法;如果你在一个循环中发送所有五个它们,但是你保持状态文本和其他所有东西是一样的。难道facebook不可能将它们组合成一个帖子吗?

票数 0
EN

Stack Overflow用户

发布于 2012-09-27 09:21:39

您可以在Open Graph操作中上传多个图像,如下所述:https://developers.facebook.com/docs/opengraph/usergeneratedphotos/

此处的示例代码如下:

代码语言:javascript
复制
https://graph.facebook.com/me/nyccookbook:cook?
  recipe=http://www.yourdomain.com/pizza.html&
  image[0][url]=http://www.yourdomain.com/images/my_camera_pizza_pic.jpg&
  image[0][user_generated]=true&
  image[1][url]=http://www.yourdomain.com/images/my_camera_soda_pic_2.jpg&
  image[1][user_generated]=true&
  access_token=YOUR_ACCESS_TOKEN
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12365875

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档