ShareKit – 将链接图像发布到Facebook墙上
(这与这个问题非常相似,但给出的答案并不相关
使用sharekit在facebook上添加图像和描述 )
如何使用ShareKit向图像发送链接,以便在共享时如下所示:
或者,或者,我可以将FB应用程序设置为在发布内容时始终显示大图标吗?
(回答我的问题)
我更改了文件SHKfacebook.m,将dialog.attachment行更改为:
dialog.attachment = [NSString stringWithFormat:@"{\"name\":\"%@\",\"href\" :\"%@\",\"media\":[{\"type\":\"image\",\"src\":\"http://example.com/example.png\" ,\"href\": \"http://example.com/\"}]} ",item.title == nil ? SHKEncodeURL(item.URL) SHKEncode(item.title),SHKEncodeURL(item.URL)];
(粘贴后将其设为一行)
您可以看到有一个图片url – http://example.com/example.png – 大概应该是76 X 90px,还有一个链接url – http://example.com/
您可能还需要显式设置sharetype。 我已经注意到3G / 3GS iPhone,除非你这样做,否则它不起作用:
item.shareType = SHKShareTypeURL; [SHKFacebook shareItem:item];
SHKFacebook * sharer = [ [ [ SHKFacebook alloc ] init] autorelease ]; SHKItem * item = [ SHKItem URL:[ NSURL URLWithString:@"http://google.com" ] title:@"my title" contentType:SHKURLContentTypeUndefined ]; item.facebookURLShareDescription = @"my description"; item.facebookURLSharePictureURI = @"http://sofzh.miximages.com/iphone/stackoverflow.png"; [ sharer loadItem:item ]; [ sharer share ];
这是我对答案的修正案,它可以在分享到Facebook时分享标题,图像和描述。 好好享受
dialog.attachment = [NSString stringWithFormat:@"{\"name\":\"%@\",\"href\":\"%@\",\"description\":\"%@\",\"media\":[{\"type\":\"image\",\"src\":\"http://sofzh.miximages.com/iphone/Blue_Eye_by_SapphiraBlue.jpg\" ,\"href\": \"%@/\"}]} ",item.title == nil ? SHKEncodeURL(item.URL) : SHKEncode(item.title),SHKEncodeURL(item.URL), @"Testing Description Comes Here", SHKEncode(SHKMyAppURL)];
或者另一种解决方案是将图像和描述编辑为参数
dialog.attachment = [NSString stringWithFormat:@"{\"name\":\"%@\",\"href\":\"%@\",\"description\":\"%@\",\"media\":[{\"type\":\"image\",\"src\":\"%@\" ,\"href\": \"%@/\"}]} ",item.title == nil ? SHKEncodeURL(item.URL) : SHKEncode(item.title),SHKEncodeURL(item.URL), item.text, item.filename, SHKEncode(SHKMyAppURL)]; dialog.userMessagePrompt = SHKLocalizedString(@"Enter your message:"); dialog.defaultStatus = @"";
通过简单地传递参数:
SHKItem *itemfb = [SHKItem image:@"" title:@"TITLE" url:url2]; itemfb.shareType = SHKShareTypeURL; itemfb.text = @"DESCRIPTION COME HERE"; itemfb.filename = @"IMAGE PATH"; [SHKFacebook shareItem:itemfb];