2016-01-25 3 views
-1

Я пытаюсь открыть приложение iOS из приложений iOS для facebook/twitter.Ссылка на приложение iOS можно открыть из gmail/safari, но не из facebook/twitter

Для этого я использую ссылку на приложение, используя ключ в info.plist: CFBundleURLSchemes.

Что я делаю, чтобы иметь приемлемую ссылку в сообщении twitter/facebook, я использую фальшивую веб-страницу, которая имеет функцию перенаправления меня на ссылку url моего приложения. например: «myapp: //»

Это прекрасно работает, если я открою свой пост в facebook (url) с помощью сафари.

Но когда дело доходит до приложений facebook/twitter, оно перенаправляется на новую веб-страницу, но не вызывает всплывающее окно для открытия моего приложения. Я вижу в ошибке журналов: «Это приложение не разрешено запрашивать для схемы myapp»

Прежде всего я понял, что это связано с ограничением iOS 9, где вы должны указать в своем белом списке [LSApplicationQueriesSchemes], какое приложение ссылается на вас принимают, чтобы открыть из вашего приложения.

Но удивительно, что при попытке открыть одну и ту же веб-страницу из приложения Gmail (это не приложение ОС) оно открывает мое приложение без проблем.

Я делаю что-то неправильно?

+0

Я думаю, это связано с тем, что facebook/twitter не используют браузер iOS по умолчанию, они не могут открывать какое-либо приложение, если они не перечисляют его в info.plist под LSApplicationQueriesSchemes. –

+0

Это может быть из-за того, что, как вы упомянули, что внутренние браузеры Facebook и Twitter обрабатывают Universal Links. Множество различных приложений и браузеров нарушают универсальные ссылки (относящиеся к iOS9.2 и более поздние версии), и во многих случаях это включает Facebook и Twitter. Иногда вы можете сделать эту работу для Twitter и/или Facebook, если веб-просмотр уже открыт. Они не работают в приложении из фида/основных видов. Они также должны быть междоменными. – jeanmw

+0

Я исправил это, используя метаданные на своей веб-странице. для facebook они называют это «App Link», а для twitter: «Карта приложения» –

ответ

0

Вы должны указать в CFBundleURLSchemes схеме для Facebook и Twitter. Прочтите это post для решения Facebook.

EDIT

Я следовал за этим шаги и все получилось. Учебник Facebook для App Links on iOS. Надеюсь, это решает вашу проблему!

+0

тоже не работает. Даже если я попытаюсь открыть fb в сафари, это работает, но не в приложении facebook. –

Смежные вопросы