我在我的应用程序中成功集成了Facebook SDK 3.1,并且我正在尝试向iOS6 +用户提供仅iOS6 +功能。我能够显示共享表,但当我看到我的墙上的帖子看起来像什么时,我感到非常失望。这是描述我的意思的图像:
第一个是从iOS6之前的对话框(网络弹出窗口)获得的,第二个是从新的iOS6 + Native Facebook对话框(换句话说,SLComposeViewController)获得的。
我的问题是:
有没有办法让第二篇文章看起来像第一篇使用FacebookNativeDialog?是否有可能像之前一样给出一个params字典,以便帖子能正确显示“via {myAppName}”?或者它只是显示帖子的新方式,旧的方式已被弃用?
答案 0 :(得分:1)
两件事:
1 /“通过iOS”归因 - 这是目前的设计,不能为您的应用自定义。
2 /具有相同的外观 - 你可以通过在设置作曲家时仅提供链接来获得这一点(即不提供图像):
SLComposeViewController *fbVC = [SLComposeViewController
composeViewControllerForServiceType:SLServiceTypeFacebook];
[fbVC setCompletionHandler:^(SLComposeViewControllerResult result) {
if (result == SLComposeViewControllerResultCancelled) {
NSLog(@"Canceled");
} else if (result == SLComposeViewControllerResultDone) {
NSLog(@"Posted");
}
}];
[fbVC addURL:[NSURL URLWithString:@"https://developers.facebook.com/ios"]];
[self presentViewController:fbVC animated:YES completion:nil];
获得相同外观的关键是链接到的页面具有Facebook可识别的Open Graph标记以正确显示数据。您可以通过输入https://developers.facebook.com/tools/debug
链接来测试OG标记是否合适如果页面没有OG标签,则只会显示链接。