在原生Facebook IOS应用程序中通过简单的URL Sheme问题打开Facebook页面

那里!

我想使用URL Scheme在本地IOS Facebook应用程序中打开我的Facebook页面(不是简介)。

我正在testing这个function – 在这个例子fb:// profile

它工作正常。

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

它只是redirect到Facebook应用程序,什么也没有发生,只需打开应用程序,并加载新闻提要。

请帮帮我。 我找不到官方的Facebook开发者指南的任何文件。 并有一些问题:是否,Facebook IOS应用程序Url Sheme仍然支持此function。 而在这种情况下我可能会做错呢?

最好的祝福!

我相信我已经find了一个解决scheme…它目前工作在iPhone的Facebook的iOS 5.0.1 ..还没有尝试过在iPad呢。

url是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

如果您注意到FBID不起作用,那么在该url中fbid = ..您想要的号码就在&type = 1theater之前,但在最后一段之后。 132753734806是在fb:// profile /

我希望这是有道理的…我对代码或编码知之甚less,但是这太困扰我了,我知道有一种方法。

现在,我想要回答/工作的两个问题.. 1.如果这可以在Android手机上工作2.创build此URL的工作二维码,以便人们可以扫描与iOS设备,并打开它自动

祝你好运,我希望这可以帮助每个人!

Alessandro的上述答案是正确的,但是这对我没有任何作用。所以这是正确的方法。 我有一个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]; } 

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”应该replace为您可以从http://findmyfbid.com获得的数字Facebook ID和使用该页面的用户名的“yourFacebookPageName”。

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