Подтвердить что ты не робот

Мобильные пользователи не могут получить доступ к вкладке страницы Facebook

У меня проблема, которую я не вижу, чтобы финансировать решение. У меня есть вкладка на моей странице в Facebook (одна из статических приложений HTML: iFrame). Нет проблем с доступом к нему с ПК, однако, когда я пытаюсь получить доступ к вкладке с мобильного устройства, он говорит:

"Запрошенная вами страница не найдена. Назад на предыдущую страницу "

Есть ли способ создать вкладку, доступную на мобильных устройствах, или просто перенаправить их во внешний домен?

Спасибо!

4b9b3361

Ответ 1

Как создать мобильную доступную страницу вкладки Страница Facebook

Чтобы создать приложение Страница страницы, имеющее доступную для мобильных устройств (внешний веб-сайт доступен напрямую, а не через iFrame Facebook). Вам нужно добавить и настроить 3 разных "Платформы" в настройках разработчика приложения. Они должны быть сконфигурированы следующим образом:

Вкладка

Настройте это, как обычно.

  • Вкладка страницы: имя, которое вы хотите отобразить на вкладке страницы
  • URL страницы вкладки: URL-адрес, на котором вы размещаете приложение с вкладкой страницы (например, http://myapp.com/page-tab)
  • Защищенный URL-адрес закладки страницы: то же самое, но с https спереди (например, https://myapp.com/page-tab)

Сайт

Здесь вы настраиваете URL-адрес своего мобильного сайта

  • URL-адрес мобильного сайта. Это URL-адрес, на который вы хотите перенаправить мобильных пользователей (например, http://myapp.com/mobile-version)
  • URL-адрес сайта. Это используется для Facebook Connect, если вы не используете Facebook-соединение, просто разместите здесь свой мобильный URL.

Приложение на Facebook

Это будет шлюз для вашего приложения. Мобильные пользователи, прибывающие на эту страницу, будут перенаправлены на мобильный сайт. Вы можете использовать javascript для перенаправления настольных пользователей на страницу вкладки страницы Facebook.

  • Страница приложения Canvas: это будет http://apps.facebook.com/my-app-namespace, это ссылка, которую вы опубликуете на стене вашего Facebook или в ваших объявлениях, или в другом месте, которое вы хотите связать со своей вкладкой страницы.
  • Canvas Url. Это ссылка на страницу вашего приложения, которая будет внедрена в качестве iframe на странице приложения canvas. Вы будете использовать эту страницу для перенаправления на вкладку страницы с помощью JavaScript. например http://myapp.com/canvas-redirect
  • Защищенный URL холста. Это то же самое, что и выше, но с https спереди (например, https://myapp.com/canvas-redirect")

Перенаправление вашего холста Script

Вы хотите, чтобы люди, прибывающие в ваше приложение canvas на обозревателе рабочего стола, перенаправлялись на приложение с вкладкой страницы. Поскольку он загружается внутри i-фрейма, единственный способ сделать это - использовать JavaScript.

Это будет содержание вашего Canvas Url (http://myapp.com/canvas-redirect выше):

<script>top.location="http://facebook.com/page_tab_url/app_1234"</script>

Обратите внимание на "top.location" - это перенаправит родительское окно, а не только iframe на вкладку страницы. Когда пользователь попадает на страницу холста в браузере рабочего стола, он будет перенаправлен с помощью JavaScript в ваше Приложение табуляции страниц. Мобильные пользователи будут перенаправлены Facebook на URL-адрес мобильного сайта, указанный вами выше.

Тестирование в режиме Sandbox

Если ваше приложение находится в режиме Sandbox, его смогут увидеть только администраторы, разработчики или тестеры приложения. В частности, пользователи, не вошедшие в Facebook или зарегистрированные в Facebook, но не админы или тестеры приложения, не смогут получить доступ к странице холста приложения - они просто увидят ошибку 404. Чтобы проверить перенаправление мобильных устройств, когда приложение находится в режиме песочницы, вам необходимо убедиться, что вы являетесь администратором, разработчиком или тестером приложения. И вы вошли в мобильный сайт Facebook на своем веб-браузере. - то есть Safari на iOS и Chrome на Android. Это не, достаточное для входа в приложение Facebook Mobile App на вашем телефоне, вы также должны войти в систему, используя браузер.

Заметка о ролях пользователя

Вы можете настроить Роли пользователей приложений, щелкнув вкладку "Роли" в настройках приложения. Вы можете добавить пользователя Facebook или группу Facebook как любую из ролей. (Если вы добавите группу, все пользователи в этой группе будут иметь роль, указанную в приложении). Чтобы пользователь мог иметь определенную роль в приложении, они должны:

(Отредактировано с учетом обновленного пользовательского интерфейса и настроек Dev Settings)

Ответ 2

В качестве обновления к этому, Facebook теперь автоматически перенаправляется на ваш сайт без каких-либо взломов.

Для этого убедитесь, что вы добавили платформу веб-сайта в свое приложение и разместили там свой мобильный URL.

Ответ 3

Мне было трудно понять, как получить доступ к вкладкам страниц с помощью мобильного телефона, и, благодаря Бену в предыдущем комментарии, я нашел способ. Прежде всего, вы не можете получить доступ к вкладкам страниц со своим мобильным телефоном, поэтому вам нужно указать его там, где на вкладке вашей страницы есть источник. Facebook может сделать это для вас, если вы используете холст, но если вы получите доступ к нему с помощью настольного компьютера, вы будете перенаправлены на ваш холст, а не на свою вкладку. Вот как мы это исправим:

-

1) Войдите в свое приложение (разработчики Facebook) в разделе "Настройки" - "Основные"

2) Скопируйте URL-адрес страницы страницы из раздела "Страница табуляции" (что-то вроде http://yourpagetab.yourdomain.com) и пропустите его на своем URL-адресе на мобильном сайте в раздел "Мобильный веб-сайт".

3) Сделайте то же самое с участком приложения в Facebook, но вместо того, чтобы указывать его на вкладку вашей страницы, вам придется использовать файл перенаправления. Позвольте использовать http://yourpagetab.yourdomain.com/redirection.php?fb

Обратите внимание, что вы должны использовать? fb в конце своей ссылки. Он ничего не делает, но Facebook хочет этого. На самом деле это может быть что угодно и возможно только?

4) Создайте этот файл redirection.php(не добавляйте? fb) и добавьте в него этот код

<script>top.location="http://facebook.com/your_fb_page/your_page_tab"</script>

Вы замените /your _fb_page/your_page_tab ссылку на вкладку вашей страницы.

5) Сохраните его!

-

Теперь все, что вам нужно сделать, это использовать URL страницы Canvas, который предоставляет вам Facebook (в приложении App на Facebook). Если люди нажимают на него и находятся на рабочем столе, они будут перенаправлены на вкладку страницы. Если они находятся на мобильных устройствах, они будут перенаправлены на ваш веб-сайт, на котором будет размещена вкладка страницы.

Если вы используете вентилятор (пользователь должен понравиться вашей странице перед тем, как перейти на вкладку вашей страницы): это не сработает, так как мобильный пользователь застрянет на ваших вентиляторах.

Единственные способы преодоления этого - отключить вентилятор или использовать Mobile Detect (вы можете искать его на Github) и отключить его только для пользователей, которые находятся на мобильных устройствах. Это небольшая цена для оплаты, если вы хотите, чтобы вкладка вашей страницы работала с мобильными пользователями. Пользователям настольных компьютеров по-прежнему будет нужна ваша страница, чтобы увидеть вкладку вашей страницы.

Ответ 5

Я один из разработчиков статического HTML. На самом деле у нас есть функция, встроенная в приложение, которая генерирует интеллектуальные, сокращенные ссылки, которые работают для мобильных и настольных компьютеров. Если вы нажмете на значок "+" в верхней части редактора, он подтянет доступную ссылку.

Если вы используете эту ссылку, мы делаем немного дополнительной магии, так что ваши вкладки лучше подходят на небольших экранах.

Изменить: мы отменили специальное форматирование, потому что оно было глюком на устройствах iOS.

Ответ 6

Вот код PHP, который я использую для перенаправления:

// Mobile_Detect
require 'Mobile_Detect.php';

$detect = new Mobile_Detect;

if (strpos('https://' . $_SERVER['HTTP_REFERER'] . $_SERVER['REQUEST_URI'], 'facebook.com') !== false && $detect->isMobile()) {
    echo '<html><head><script type="text/javascript">window.top.location.href = "https://yourappurl.com";</script></head><body></body></html>';
    die();
}