Открытие страницы приложения Facebook при нажатии кнопки.Swift 5 - PullRequest
0 голосов
/ 08 июня 2019

Приложение Facebook не открывается, вместо этого открывается Facebook в Safari. Использование xCode 10.2.1

Цель развертывания под управлением iOS 12.2

Редактировать: этот код достигает желаемой цели для Instagram

Edit2: Поэтому по рекомендации @bbrodsky я изменил «facebook» на «fb» в ссылке URL. Теперь проблема в том, что он открывается для моего личного канала, а не для бизнес-страницы, к которой я хочу его открыть.

Edit3: Итак, я получил его на работу. Открывает приложение facebook и переходит на нужную страницу. Пришлось изменить appURL на "fb: // profile / NUMERICFBID". Мне удалось получить числовой идентификатор Facebook для страницы на этом сайте https://findmyfbid.com/

Пробные решения из этого поста и другие. Кажется, что не может найти какие-либо недавние ответы на этот вопрос, поскольку все, кажется, из более ранних версий iOS и swift / xCode. Не уверен, что все изменилось. Добавили рекомендуемый код в исходный файл plist безрезультатно.

Как открыть приложение fb и instagram, нажав на кнопку в Swift

@IBAction func facebookButtonTapped(_ sender: UIButton) {
   let screenName =  "MYSCREENNAME"
   let appURL = NSURL(string: "facebook://user?screen_name=\ 
     (screenName)")!
   let webURL = NSURL(string: "https://facebook.com/\ 
     (screenName)")!

   if UIApplication.shared.canOpenURL(appURL as URL) {
            if #available(iOS 10.0, *) {
                UIApplication.shared.open(appURL as URL, options: 
            [:], completionHandler: nil)
            } 
            else { UIApplication.shared.openURL(appURL as URL)
            }
        } 
   else {
            //redirect to safari because the user doesn't have 
              Instagram
            if #available(iOS 10.0, *) {
                UIApplication.shared.open(webURL as URL, options: 
                [:], completionHandler: nil)
            } 
            else {UIApplication.shared.openURL(webURL as URL)
            }
        }

ожидаемый результат - приложение facebook открывает определенную страницу. продолжайте получать этот код ошибки.

2019-06-08 11: 28: 39.561051-0500 SocialMediaLinkPractice [9888: 2173963] -canOpenURL: сбой для URL: «facebook: // user? Screen_name = MYSCREENNAME» - ошибка: «Это приложение не может запрашивать по схеме фейсбук "

1 Ответ

0 голосов
/ 08 июня 2019

Полагаю, вы хотите использовать "fb: //", а не "facebook: //"

...