我正在尝试使用以下代码在Facebook上发布图像。
FBStreamDialog* dialog ;
if([FBSession session].isConnected)
dialog = [[[FBStreamDialog alloc] initWithSession:[FBSession session]] autorelease];
else
dialog = [[[FBStreamDialog alloc] initWithSession:session] autorelease];
dialog.attachment = [NSString stringWithFormat:@"{\"name\":\"%@\",\"media\":[{\"type\":\"image\",\"src\":\"%@\"}]}", strEventStatus,eventImg];
[dialog show];
除了src之外,媒体标签是否还有其他任何属性可以采用NSData的形式?我怎么发布图像呢?
答案 0 :(得分:1)
当您链接图像的附件属性时,源应该是一个URL ..我不认为您可以使用附件发布UIImage。一个解决方案是您可以使用Web服务在服务器中发布图像然后在发布时提供该URL。
我不知道你正在使用哪个Facebook API .. 这就是我使用Facebook Graph API上传图像所做的工作
UIImage *img = [UIImage imageNamed:@"myImage.png"];
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
img, @"picture",
nil];
//facebook is a facebook Obj which I initialized before
[facebook requestWithMethodName:@"photos.upload"
andParams:params
andHttpMethod:@"POST"
andDelegate:self];
答案 1 :(得分:0)
我不了解您正在使用的Facebook API,但看起来图片SRC会暗示图片已经存在于网络上。
您是否考虑过将图片上传到服务器并将图片的SRC用作网址?
我希望这有帮助!
答案 2 :(得分:0)
您可以直接选择UIimage
并通过BuildSucceeded
使用的代码上传,您不再需要将图片转发到服务器并通过网址链接。您也可以从UIimageview
,相机或图书馆调用图像。