FBSDKShareLinkContent未设置contentDescription和contentTitle
我正在尝试使用FBSDKShareLinkContent
在Facebook上分享链接。
我已经设置了url,描述和标题。 SDK通过从contentURL
获取的信息自动填充标题和描述。
但是我想设置我在代码中给出的自定义标题和描述。 有没有办法避免这种行为?
FBSDKShareLinkContent *content = [[FBSDKShareLinkContent alloc] init]; [content setContentTitle:@"Testing title"]; [content setContentDescription:@"Testing description."]; content.contentURL = [NSURL URLWithString:[NSString stringWithFormat:@"https://www.google.co.in/"]]; [FBSDKShareDialog showFromViewController:self withContent:content delegate:nil];
我遇到了同样的问题,find了一个解决方法 – 将FBSDKShareDialog实例直接设置为FBSDKShareDialogModeFeedWeb。
FBSDKShareDialog* dialog = [[FBSDKShareDialog alloc] init]; dialog.mode = FBSDKShareDialogModeFeedWeb; dialog.shareContent = content; dialog.fromViewController = self; [dialog show];
它在应用程序中的UIWebView中显示提要对话框,预览post的正确标题和说明。
FBSDKShareDialogMode设置为FeedBrowser解决了我的问题
let dialog = FBSDKShareDialog() dialog.fromViewController = self dialog.shareContent = shareLink dialog.mode = FBSDKShareDialogMode.FeedBrowser dialog.show()
我试过这个代码,它在我的虚拟设备上完美的工作,直到我设置了电话设置Facebook帐户。 设置完之后,我每次打开对话框时都会打开默认的iOS社交分享对话框。 删除您的帐户,如果它存在设置,或者只是安装FB应用程序,在文档中我看到我们需要FB应用程序共享。
如果这不起作用,您可以随时使用iOS的Social Share框架,下面是示例。
http://www.appcoda.com/ios-programming-101-integrate-twitter-and-facebook-sharing-in-ios-6/
希望这会帮助,顺便说一下,今天我也堆积在这个问题上,现在每一个与iOS的这个社交共享框架很好的工作。
改用FBSDKShareLinkContent的引用属性
FBSDKShareLinkContent *linkContent = [FBSDKShareLinkContent new]; linkContent.quote = @"your quote"; FBSDKShareDialog *shareDialog = [FBSDKShareDialog new]; shareDialog.shareContent = linkContent;
已从Graph API 2.9中弃用setContentTitle
和setContentDescription
。 有关更多信息,请参阅https://developers.facebook.com/docs/apps/changelog#v2_9_deprecations
通过使用下面的代码,我们可以分享我们想要的。但只有从模拟器,当我们寻找Iphone或Ipad会出现一个对话框,它会直接从url获取信息..
FBSDKShareLinkContent *content = [[FBSDKShareLinkContent alloc] init]; content.contentURL = [NSURL URLWithString:@"http://www.k2bindia.com/"]; content.imageURL= [NSURL URLWithString:@"https://lh4.ggpht.com/qUs2_ntWQrWgNElAdHNVNpK_P4xuhPbX8WOcncUS0f5yQVdYtrGH9xit_aBkgwCz0mA=w300"]; content.contentTitle=@"MY TEST APP"; content.contentDescription=@"Its my description Its my description Its my description Its my description Its my description"; [FBSDKShareDialog showFromViewController:self delegate:self];