9

那里!

我想使用 URL Scheme 在本机 IOS Facebook 应用程序中打开我的 Facebook 页面(不是个人资料)。

我正在测试这个功能 - 在这个例子中fb://profile

它工作正常。

但是,当我试图打开我的 Facebook 页面时 - 来自fb://page/141720395863506

它只是将我重定向到 Facebook 应用程序并没有任何反应,只需打开应用程序并加载新闻提要。

请帮我。我找不到官方 facebook 开发人员指南的任何文档。并且有一些问题:Facebook IOS App Url Sheme 是否仍然支持此功能。在这种情况下我可能做错了吗?

最好的祝福!

4

4 回答 4

19

我相信我找到了一个解决方案......它目前在 facebook ios 5.0.1 for iPhone 下工作......还没有在 iPad 上尝试过。

网址是 fb://profile/132753734806

现在重要的部分是那个数字。这与我的一位客户查尔斯·斯科特有关。但是,这不是他们的 FBID 或页面 ID .. 他们的页面 ID 是 10150348920319807

所以你会认为它应该是 fb://profile/10150348920319807 但这给了我一个错误。

这是您获得正确代码的方法.. 单击您页面的任何照片.. 这是我的客户的示例https://www.facebook.com/photo.php?fbid=10150348920319807&set=a.10150348920314807.356942.132753734806&type=1&theater

如果您注意到该 URL 中 fbid= 之后的 FBID 不起作用。您想要的数字就在 &type=1theater 之前,但在最后一个时期之后。132753734806 是在 fb://profile/ 之后打卡的正确代码

我希望这是有道理的......我对代码或编码知之甚少,但这让我非常困扰,我知道有办法。

现在,我很想回答/工作的两个问题.. 1. 如果这可以在 android 手机上工作 2. 为这个 url 创建一个工作 qr 码,以便人们可以使用 ios 设备扫描并自动打开它

祝你好运,我希望这对每个人都有帮助!

于 2012-09-21T04:38:59.490 回答
6

亚历山德罗的上述回答是正确的,但这对我来说并没有真正起作用。所以这是正确的方法。我有一个 URL https://www.facebook.com/pageName 现在,转到: http: //findmyfacebookid.com 粘贴你的 URL,获取 Facebook id,然后将 url 设为 @"fb://profile/pageID"

它对我有用!

注意:检查设备中是否安装了本机应用程序,否则通过默认浏览器打开它。

 if (![[UIApplication sharedApplication] openURL: [NSURL URLWithString:@"fb://profile/pageId"]]) 
{            
   NSURL *url = [NSURL URLWithString:@"https://www.facebook.com/pageName"];
   [[UIApplication sharedApplication] openURL:url];
}
于 2014-02-09T09:25:28.377 回答
1

斯威夫特 3.0 / iOS10:

let fbUrl: NSURL = NSURL(string: "fb://profile/55555555555555")!
let fbWebUrl: NSURL = NSURL(string: "https://facebook.com/yourFacebookPageName")!

if (UIApplication.shared.canOpenURL(fbUrl as URL)) {
    if #available(iOS 10.0, *) {
        UIApplication.shared.open(fbUrl as URL, options: [:], completionHandler: nil)
    } else {
        // Fallback on earlier versions
        UIApplication.shared.openURL(fbUrl as URL)
    }
} else {
    if #available(iOS 10.0, *) {
        UIApplication.shared.open(fbWebUrl as URL, options: [:], completionHandler: nil)
    } else {
        // Fallback on earlier versions
        UIApplication.shared.openURL(fbWebUrl as URL)
    }
}

“55555555555555”应替换为您可以从http://findmyfbid.com获得的数字 Facebook ID ,“yourFacebookPageName”应替换为页面的用户名。

不要忘记在应用程序的 Info.plist(在 LSApplicationQueriesSchemes 下)中启用 fb url 方案。

于 2016-12-07T21:02:09.120 回答
0

我认为这描述了为应用程序发现此类链接的程序化/正式 wat:https ://developers.facebook.com/docs/applinks

于 2019-09-28T12:54:58.703 回答