Вот являются некоторые схемы использованием приложения Facebook, существует тонна больше на исходной ссылке:
NSURL *url = [NSURL URLWithString:@"fb://profile/<id>"];
[[UIApplication sharedApplication] openURL:url];
fb://представляют †“, Открывают приложение Facebook для профиля user’s
fb://, друзья †“Открывают приложение Facebook для друзей список
fb://, уведомления †“Открывают приложение Facebook для списка уведомлений (ПРИМЕЧАНИЕ: кажется, существует ошибка с этим URL. Страница Notifications открывается. Однако it’s, не возможный перейти к где-либо еще в приложении Facebook)
, fb://питаются, †“Открывают приложение Facebook для ленты новостей
fb://, события †“Открывают, приложение Facebook к странице
Events fb://запрашивает, чтобы †“Открыли приложение Facebook для списка Запросов
, fb://отмечает, что †“Открывают приложение Facebook для страницы
Notes fb://, альбомы †“Открывают приложение Facebook для списка Фотоальбомов
, Если прежде, чем открыть этот URL, Вы хотите проверить, можно ли пользовательский фас приложение Facebook сделать следующее (как объяснено в другом ответе ниже):
if ([[UIApplication sharedApplication] canOpenURL:nsurl]){
[[UIApplication sharedApplication] openURL:nsurl];
}
else {
//Open the url as usual
}
Просто используйте https://graph.facebook.com / (your_username или название страницы) для получения страницы ID и после того, как Вы будете видеть все задержание и Ваш идентификатор
после в Вашем использовании Приложения для iOS:
NSURL *url = [NSURL URLWithString:@"fb://profile/[your ID]"];
[[UIApplication sharedApplication] openURL:url];
Для добавления комментария yonix’s как ответа старое fb://page/…
, URL больше не работает. По-видимому, это было заменено fb://profile/…
, даже при том, что страница не является профилем.
Я сделал это в MonoTouch в следующем методе, я уверен чистый Obj-C, базирующийся подход не слишком отличался бы. Я использовал эту внутреннюю часть класс, который время от времени имел изменяющиеся URL, который является, почему я просто не вставил ее если/оператор else if.
NSString *myUrls = @"fb://profile/100000369031300|http://www.facebook.com/ytn3rd";
NSArray *urls = [myUrls componentsSeparatedByString:@"|"];
for (NSString *url in urls){
NSURL *nsurl = [NSURL URLWithString:url];
if ([[UIApplication sharedApplication] canOpenURL:nsurl]){
[[UIApplication sharedApplication] openURL:nsurl];
break;
}
}
повреждение не всегда называют перед Вашими изменениями приложений к Safari/Facebook. Я предполагаю, что Ваша программа остановится там и назовет его, когда Вы возвратитесь к нему.
быстрый 3
if let url = URL(string: "fb://profile/<id>") {
if #available(iOS 10, *) {
UIApplication.shared.open(url, options: [:],completionHandler: { (success) in
print("Open fb://profile/<id>: \(success)")
})
} else {
let success = UIApplication.shared.openURL(url)
print("Open fb://profile/<id>: \(success)")
}
}
Я знаю, что вопрос стар, но в поддержку вышеупомянутых ответов я хотел совместно использовать свой рабочий код. Просто добавьте эти два метода к любому классу. Код проверяет, установлено ли приложение Facebook, если не установленный URL открыт в браузере. И если какие-либо ошибки произойдут при попытке найти проидентификатор файла, то страница будет открыта в браузере. Просто передайте URL (пример, http://www.facebook.com/AlibabaUS ) к openUrl: и это сделает все волшебство. Надежда это помогает кому-то!.
ПРИМЕЧАНИЕ: UrlUtils был классом, который имел код для меня, Вам, возможно, придется изменить его на что-то еще к комплекту Ваши потребности.
+(void) openUrlInBrowser:(NSString *) url
{
if (url.length > 0) {
NSURL *linkUrl = [NSURL URLWithString:url];
[[UIApplication sharedApplication] openURL:linkUrl];
}
}
+(void) openUrl:(NSString *) urlString
{
//check if facebook app exists
if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"fb://"]]) {
// Facebook app installed
NSArray *tokens = [urlString componentsSeparatedByString:@"/"];
NSString *profileName = [tokens lastObject];
//call graph api
NSURL *apiUrl = [NSURL URLWithString:[NSString stringWithFormat:@"https://graph.facebook.com/%@",profileName]];
NSData *apiResponse = [NSData dataWithContentsOfURL:apiUrl];
NSError *error = nil;
NSDictionary *jsonDict = [NSJSONSerialization JSONObjectWithData:apiResponse options:NSJSONReadingMutableContainers error:&error];
//check for parse error
if (error == nil) {
NSString *profileId = [jsonDict objectForKey:@"id"];
if (profileId.length > 0) {//make sure id key is actually available
NSURL *fbUrl = [NSURL URLWithString:[NSString stringWithFormat:@"fb://profile/%@",profileId]];
[[UIApplication sharedApplication] openURL:fbUrl];
}
else{
[UrlUtils openUrlInBrowser:urlString];
}
}
else{//parse error occured
[UrlUtils openUrlInBrowser:urlString];
}
}
else{//facebook app not installed
[UrlUtils openUrlInBrowser:urlString];
}
}
Если приложение Facebook будет зарегистрировано, то страница будет открыта при выполнении следующего кода. Если приложение Facebook не будет зарегистрировано при выполнении кода, то пользователь будет затем перенаправлен к приложению Facebook для входа в систему, и затем после соединения Facebook не перенаправляется к странице!
NSURL *fbNativeAppURL = [NSURL URLWithString:@"fb://page/yourPageIDHere"] [[UIApplication sharedApplication] openURL:fbNativeAppURL]
Просто проверенный это сегодня, но при попытке открыть страницу Facebook , можно использовать "fb://страница / {идентификатор Страницы}"
, идентификатор Страницы может быть найден под страницей в о разделе около нижней части.
Характерный для моего варианта использования, в Xamarin. Формы, можно использовать этот отрывок для открытия в приложении при наличии, иначе в браузере.
Device.OpenUri(new Uri("fb://page/{id}"));
Это откроет URL in Safari:
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.facebook.com/comments.php?href=http://wombeta.jiffysoftware.com/ViewWOMPrint.aspx?WPID=317"]];
Для iPhone, можно запустить приложение Facebook, если установлено при помощи URL, запускающегося с fb://
[еще 117], информация может быть найдена здесь: http://iphonedevtools.com/?p=302 также здесь: http://wiki.akosma.com/IPhone_URL_Schemes#Facebook
Украденный от вышеупомянутого сайта:
fb://profile – Open Facebook app to the user’s profile
fb://friends – Open Facebook app to the friends list
fb://notifications – Open Facebook app to the notifications list (NOTE: there appears to be a bug with this URL. The Notifications page opens. However, it’s not possible to navigate to anywhere else in the Facebook app)
fb://feed – Open Facebook app to the News Feed
fb://events – Open Facebook app to the Events page
fb://requests – Open Facebook app to the Requests list
fb://notes - Open Facebook app to the Notes page
fb://albums – Open Facebook app to Photo Albums list
Для запуска вышеупомянутых URL:
NSURL *theURL = [NSURL URLWithString:@"fb://<insert function here>"];
[[UIApplication sharedApplication] openURL:theURL];