4

当 Safari 打开 URL 时,我可以轻松链接到 Facebook 上的特定帖子,但我还没有找到在 Facebook 应用程序中打开该帖子的方法。在用户必须点击“更多帖子”之前,Facebook 应用程序仅显示大约三个最近的帖子。所以找到他们感兴趣的帖子有点困难。这是我现在的代码,它允许用户链接到 Safari 中的确切帖子,但如果安装了 Facebook 应用程序则不能。

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    NSString *postID = [[parsedPosts objectAtIndex:[indexPath indexAtPosition:1]] objectForKey:@"post_id"];
    NSArray *idParts = [postID componentsSeparatedByString:@"_"];
    UIApplication *sharedApp = [UIApplication sharedApplication];
    NSURL *faceBookURL = [NSURL URLWithString:[NSString stringWithFormat:@"fb://profile/%@", [idParts objectAtIndex:0]]];
    if([sharedApp canOpenURL:faceBookURL]){
         [sharedApp openURL:faceBookURL];
    } else {
        NSURL *safariURL = [NSURL URLWithString:[NSString stringWithFormat:@"http://m.facebook.com/story.php?story_fbid=%@&id=%@", [idParts objectAtIndex:1], [idParts objectAtIndex:0]]];
        [sharedApp openURL:safariURL];
    }
}

一个不起作用的 URL,但应该:fb://post/123456789_123456789

4

1 回答 1

1

如果这仍然是事情。

首先,您需要按字符“_”拆分您的帖子 ID。

然后使用 path: fb://profile/{id} 其中 {id} 将等于从拆分获得的数组的第二部分。这对我有用。

澄清:ID 123456_789789 将变成一个数组 = [123456,789789] 然后你的网址看起来像这样 fb://profile/789789

于 2016-12-09T14:07:42.757 回答