从 Open Graph v2.0 开始,应用程序不再可以访问 Facebook 用户的实际 ID,而是必须处理应用程序范围 ID。这意味着在 iOS 中,url 方案链接 @"fb://profile/123456"不再有效,因为我们需要用户的实际 ID。
有没有办法在原生 iOS facebook 应用程序中打开只有应用程序范围 ID 的用户页面?
这是我当前的代码,它会在 native iOS Facebook 应用程序中产生“找不到页面”错误。
NSString *link = [NSString stringWithFormat:@"fb://profile/%@", fbID];
NSURL *facebookURL = [NSURL URLWithString:link];
if ([[UIApplication sharedApplication] canOpenURL:facebookURL]) {
[[UIApplication sharedApplication] openURL:facebookURL];
} else {
NSString *link = [NSString stringWithFormat:@"http://facebook.com/%@", fbID];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:link]];
}
最佳答案
您好,基于此 documentation .所以 Facebook ID 是 App-scoped 用户 ID。因此,您也可以使用基于相同的 URL 方案。尝试使用此请求打开用户配置文件:
fb://profile?app_scoped_user_id=%@
同时考虑这个 article关于这个请求也是如此。毕竟在我看来你应该使用 Safari 来显示用户个人资料。
关于ios - 如何在 native iOS Facebook 应用程序中使用其应用程序范围 ID 打开某人的个人资料页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26437664/