Из моего приложения для Android я бы хотел открыть ссылку на профиль Facebook в официальном приложении Facebook (если приложение, конечно, установлено). Для iPhone существует fb://
схема URL, но при попытке выполнить то же самое на моем устройстве Android выдается сообщение ActivityNotFoundException
.
Есть ли шанс открыть профиль Facebook в официальном приложении Facebook из кода?
android
facebook
url-scheme
Бьорн Маршоллек
источник
источник
Ответы:
В Facebook версии 11.0.0.11.23 (3002850)
fb://profile/
иfb://page/
больше не работают. Я декомпилировал приложение Facebook и обнаружил, что вы можете использоватьfb://facewebmodal/f?href=[YOUR_FACEBOOK_PAGE]
. Вот метод, который я использовал в производстве:источник
ActivityNotFoundException
Это работает на последней версии:
Используйте этот метод:
Откроется приложение Facebook, если оно установлено пользователем. В противном случае откроется Facebook в браузере.
РЕДАКТИРОВАТЬ: начиная с версии 11.0.0.11.23 (3002850) приложение Facebook больше не поддерживает этот способ, есть другой способ, проверьте ответ ниже от Джареда Раммлера.
источник
Разве это не проще? Например, внутри onClickListener?
PS. Получите ваш идентификатор (большое число) с http://graph.facebook.com/[userName]
источник
Для страницы Facebook:
Для профиля в Facebook:
... потому что ни один из ответов не указывает на разницу
Оба протестированы с Facebook v.27.0.0.24.15 и Android 5.0.1 на Nexus 4
источник
Вот способ сделать это в 2016 году, отлично работает и очень легко.
Я обнаружил это после изучения того, как электронные письма, отправленные через Facebook, открывали приложение.
источник
это самый простой код для этого
источник
Более многоразовый подход.
Эту функцию мы обычно используем в большинстве наших приложений. Следовательно, здесь есть многократно используемый код для достижения этой цели.
(Подобно другим ответам в терминах фактов. Размещать его здесь просто для упрощения и повторного использования реализации)
"fb://page/
не работает с более новыми версиями приложения FB. Вы должны использоватьfb://facewebmodal/f?href=
для более новых версий. ( Как упомянуто в другом ответе здесь )Это полноценный рабочий код, который в настоящее время находится в одном из моих приложений:
Этот метод возвращает правильный URL для приложения, если оно установлено, или веб-URL, если приложение не установлено.
Затем начните намерение следующим образом:
Это все, что вам нужно.
источник
Это был обратный инжиниринг Pierre87 на форуме FrAndroid , но я не могу найти нигде официального, который описывает это, так что это должно рассматриваться как недокументированное и может перестать работать в любой момент:
источник
попробуйте этот код:
источник
Для этого нам нужен «идентификатор страницы Facebook», вы можете получить его:
Чтобы открыть приложение facebook на указанной странице профиля,
ты можешь сделать это:
Или вы можете проверить, когда приложение facebook не установлено, а затем открыть веб-страницу facebook.
источник
Page ID
на вкладке About. Это личное?После долгих испытаний я нашел одно из самых эффективных решений:
источник
Мой ответ основан на общепринятом ответе от joaomgcd. Если у пользователя установлен Facebook, но он отключен (например, с помощью карантина приложения), этот метод не будет работать. Будет выбрано назначение для приложения Twitter, но оно не сможет его обработать, поскольку оно отключено.
Вместо того:
Вы можете использовать следующее, чтобы решить, что делать:
источник
Лучший ответ, который я нашел, он отлично работает.
Просто перейдите на свою страницу в Facebook в браузере, щелкните правой кнопкой мыши и выберите «Просмотр исходного кода», а затем найдите
page_id
атрибут: вы должны использоватьpage_id
здесь в этой строке после последней обратной косой черты:Например:
источник
По состоянию на март 2020 года это работает отлично.
источник
источник
По состоянию на июль 2018 года это прекрасно работает с приложением Facebook или без него на всех устройствах.
источник
Я создал метод, чтобы открыть страницу facebook в приложении facebook, если приложение не существует, то открытие в Chrome
Utils.class добавить эти методы
и это
источник
Чтобы запустить страницу facebook из вашего приложения, позвольте urlString = "fb: // page / your_fb_page_id"
Для запуска мессенджера в Facebook пусть urlString = "fb-messenger: // user / your_fb_page_id"
Идентификатор страницы FB обычно числовой. Чтобы получить его, перейдите в Find My FB ID, введите URL вашего профиля, что-то вроде www.facebook.com/edgedevstudio затем нажмите «Find Numberic ID».
Вуаля, теперь у вас есть свой числовой идентификатор FB. замените "your_fb_page_id" на сгенерированный числовой идентификатор
источник
Объявить константы
Объявить метод
Функция вызова
источник
Ответ на этот вопрос в октябре 2018 года. Рабочий код - тот, который использует pageID. Я только что проверил, и это функционально.
источник
Я реализовал в этой форме в веб-представлении, используя фрагмент внутри oncreate:
и снаружи onCreateView:
источник
открыть фб при нажатии кнопки без использования facebook sdk
источник
источник
1 - чтобы получить свой идентификатор, перейдите в свой профиль изображения, щелкните правой кнопкой мыши и выберите ссылку для копирования адреса.
источник
источник
Вы можете открыть приложение facebook по нажатию кнопки следующим образом: -
источник