1

我在我的应用程序中成功集成了 Facebook SDK 3.1,并且我正在尝试向 iOS6+ 用户推荐仅 iOS6+ 的功能。我可以展示分享表,但是当我看到我墙上的帖子时,我很失望。这是一张图片来描述我的意思:

第一个是从 iOS6 之前的对话框(网络弹出窗口)获得的,第二个是从新的 iOS6+ Native Facebook 对话框(换句话说,SLComposeViewController)获得的。

我的问题是:

有没有办法使用 FacebookNativeDialog 使第二个帖子看起来像第一个?是否可以像以前一样提供参数字典,以便帖子将正确显示“通过 {myAppName}”?或者它只是显示帖子的新方式,而旧方式已被弃用?

4

1 回答 1

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 标签,则只会显示链接。

于 2012-12-28T17:39:45.550 回答