使用IOS上的Facebook应用程序打开Facebook组页面

问题描述:

在我的IOS应用程序中,我想打开Facebook应用程序到一个组。使用IOS上的Facebook应用程序打开Facebook组页面

在Android上,我只是打开以下网址:

“FB://组/ 12345678 /”(我取代了这个例子中,组ID)

这在Android上正常工作。当试图在IOS同样的事情:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"fb://group/12345678/"]]; 

的Facebook应用程序将打开,但我得到:“您使用的链接可能被破坏,或者该页面可能已被删除”

我找不到任何其他方式从IOS开放给公共facebook组。

由于

尝试使用 “轮廓”,而不是 “基团”(例如URLWithString:@"fb://profile/144754840")。

+0

这只是在Faceb中加载一个完全空白的页面ook app。 – CptRayMar 2014-09-30 22:08:05

+0

这不起作用 - Swift 4/Xcode 9 – rommex 2018-03-03 11:31:57

您可以通过用户页面ID,像这样:

ObjC

NSURL *url = [NSURL URLWithString:@"fb://page/?id=12345678"] 
[[UIApplication sharedApplication] openURL:url]; 

Swift3

func openFBGroup(groupID: String = "12345678") -> Bool { 
    guard let url = URL(string: "fb://page/?id=\(groupID)") else { return false } 
    guard UIApplication.shared.canOpenURL(url) else { return false } 
    UIApplication.shared.open(url, options: [], completionHandler: nil) 
    return true 
} 
+0

这对Swift 4/Xcode 9不起作用 – rommex 2018-03-03 11:31:35

Facebook中的应用程序打开组,你只需要打开的完整URL :

NSURL *url = [NSURL URLWithString:@"https://www.facebook.com/gropId"] 
[[UIApplication sharedApplication] openURL:url]; 

而不是https://fb.com/gropId

您可以使用配置文件和组ID在Facebook应用程序打开的Facebook群组,详细信息代码:

NSURL *facebookGroupURL = [NSURL URLWithString:@"fb://profile/123456/"]; 
if ([[UIApplication sharedApplication] canOpenURL:facebookGroupURL]) { 
    [[UIApplication sharedApplication] openURL:facebookGroupURL]; 
} 
else { 
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"https://www.facebook.com/groups/123456/"]]; 
} 

浏览: enter image description here

手机: enter image description here

这对我的作品上Xcode 9.1/iOS 11.1.2