通过简单的URL Scheme问题在Native Facebook IOS App中打开Facebook页面

时间:2012-08-24 10:27:29

标签: ios facebook url

有!

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

我正在测试此功能 - 在此示例中 fb://个人资料

工作正常。

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

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

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

祝你好运!

4 个答案:

答案 0 :(得分:21)

我相信我找到了一个解决方案......目前在iPhone ios 5.0.1 for iPhone下运行..尚未在iPad上试过。

网址为fb:// profile / 132753734806

现在重要的部分就是那个数字。这与我的一位客户Charles Scott有关。但是,这不是他们的FBID或Page ID ..他们的页面ID是10150348920319807

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

以下是您获取正确代码的方法..点击您网页上的任意照片..这是我的客户https://www.facebook.com/photo.php?fbid=10150348920319807&set=a.10150348920314807.356942.132753734806&type=1&theater的示例

如果您注意到FBID不起作用,则在该URL中使用fbid = ..您想要的数字就在& type = 1剧院之前,但是在最后一个句点之后。 132753734806是在fb:// profile /

之后打入的正确代码

我希望这有点道理......我对代码或编码一无所知但这让我很烦心,我知道有办法。

现在,我希望能回答/工作的两个问题.1。如果这可以在Android手机上运行2.为此网址创建一个有效的qr代码,以便人们可以使用ios设备扫描并自动打开< / p> 祝你好运,我希望这能帮到每个人!

答案 1 :(得分:6)

Alessandro的上述答案是正确的,但这对我来说并不适用..所以这是正确的方法。 我有一个网址https://www.facebook.com/pageName 现在,转到: 的 http://findmyfacebookid.com 粘贴您的网址,获取Facebook ID,然后将网址设为@“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];
}

答案 2 :(得分:1)

Swift 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和“yourFacebookPageName”获得的数字Facebook ID。

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

答案 3 :(得分:0)

我认为这描述了为应用程序找到此类链接的程序/正式方式:https://developers.facebook.com/docs/applinks