【问题标题】:Facebook share functionality is not working in iOS8Facebook 分享功能在 iOS8 中不起作用
【发布时间】:2026-01-24 21:05:03
【问题描述】:

我已经使用社交框架实现了 Facebook 分享功能。我已经使用设备设置配置了 Facebook 帐户。当我在设备上安装 Facebook 应用时,共享没有按预期工作。

分享窗口出现时,只有分享图片,没有初始文字和网址。

iOS8 - 如果我从设备中删除 Facebook 应用程序,共享功能会正常工作。

iOS7 - 即使 Facebook 应用程序在设备上,分享功能也能正常工作。

我不确定是框架问题还是缺少某些东西?

SLComposeViewController *facebookShareVC = [SLComposeViewController  composeViewControllerForServiceType:SLServiceTypeFacebook];

NSString *imagePath = [NSString stringWithFormat:@"%@/%@_%@_%@.gif", [[STInteractionManager sharedManager] getAppLibraryCacheDirectory], article.journalID, article.volume, article.issueNumber];

UIImage* img = [[STInteractionManager sharedManager] imageNamedFromDocuments:imagePath];

[facebookShareVC setInitialText:self.articleTitle];

[facebookShareVC addURL:[NSURL URLWithString:[self.url   stringByReplacingOccurrencesOfString:@"?dispform=ios-device" withString:@""]]];

[facebookShareVC addImage:img];

[self presentViewController:facebookShareVC animated:YES completion:nil];

【问题讨论】:

标签: objective-c facebook ios8 sharing ios8.1


【解决方案1】:

如果您想预先填写这些字段,则根本不应该使用 Facebook SDK。相反,请使用 Apple 提供的 Social 框架。只需几行代码,您就可以触发 SLComposeViewController。

【讨论】:

  • 我知道 UIActivityViewController 用于分享这篇文章。 SLComposeViewController 不是 Facebook SDK。它由 Apple 提供,可用于在 Facebook 和 Twitter 上进行分享。当时我有不同的要求(2年之前)。