Используйте веб-контент в своем приложении для Android

Android позволяет вам как разработчику использовать возможности Интернета в своих приложениях, чтобы вы могли воспользоваться гибкостью и эффективностью отображения определенных типов контента.

Это позволяет вам легко интегрировать существующий веб-контент в ваше собственное приложение Android, например, отображать ленту новостей, показывать интерактивные учебные пособия, показывать рекламу или даже размещать мини-игры, не создавая все с нуля. Думайте об этом как об окне в Интернет из вашего приложения. Есть два способа встроить веб-контент в ваше приложение:

  • WebView : он отображает веб-контент, которым вы управляете, в режиме онлайн, где вам нужна высокая степень гибкости при настройке или обновлении пользовательского интерфейса.
  • Пользовательские вкладки : полноценный просмотр в приложении на базе браузера пользователя по умолчанию ( см. «Поддержка браузера» ), когда пользователи нажимают ссылку, и вы хотите оставить их в приложении, а не оставлять большую часть просмотра во внешнем браузере. опыт нестандартный.
Приложение Android открыто в Google Play, при этом основное веб-представление выделено красным прямоугольником.Настраиваемая вкладка, открытая на веб-странице Android для разработчиков, выделена красной рамкой.
Рисунок 1. WebView (слева) и пользовательская вкладка (справа), обведенные красным.

Зачем встраивать веб-контент?

  • Эффективность: повторно используйте существующий код вашего сайта. Опирайтесь на существующие веб-технологии и контент.
  • Интеграция: используйте в своем приложении внешний контент от 3P-провайдеров, например медиа и рекламу.
  • Гибкость: обновляйте контент динамически, не ограничиваясь предопределенными пользовательскими интерфейсами или не выпуская обновления приложений.

Когда использовать веб-контент?

Существует три основных варианта использования Интернета в приложении для Android:

1. Встраивание веб-контента в ваше приложение в качестве основного или вспомогательного контента: используйте WebView.

  • Отображение собственного веб-контента в качестве основного элемента, если вам нужна высокая степень гибкости в настройке или обновлении пользовательского интерфейса.
  • Отображайте другой контент, такой как реклама, юридические условия и правила или другой сторонний контент, внутри или в виде окна в вашем приложении.
Приложение Android открыто в Google Play, при этом основное веб-представление выделено красным прямоугольником.Приложение Android открыто со вспомогательным текстом в красной рамке.
Рис. 2. Веб-контент, встроенный в приложение, с WebViews в качестве основного (слева) и вспомогательного контента (справа).

2. Просмотр в приложении с использованием пользовательских вкладок или WebView для более сложных случаев использования.

  • Обеспечьте полноценный просмотр в приложении, когда пользователи нажимают ссылку, и вы хотите сохранить их в приложении, а не во внешнем браузере.
    • Примечание. Для устройств с большим экраном, таких как планшеты и складные устройства, существуют дополнительные параметры, позволяющие приложениям использовать дополнительное пространство:
    • Приложения могут открывать веб-ссылки на разделенном экране, используя соседний многооконный интерфейс . Это позволяет пользователям одновременно выполнять несколько задач между вашим приложением и браузером. ИЛИ
    • Настраиваемые вкладки имеют опцию боковой панели, которую можно открыть в той же задаче, но рядом с существующим содержимым приложения.
  • Пользовательская вкладка работает на основе браузера пользователя по умолчанию для браузеров, которые поддерживают пользовательские вкладки.
    • Хотя можно использовать WebView и обеспечить широкие возможности настройки просмотра в приложении, мы рекомендуем настраиваемые вкладки для готового использования браузера и плавного перехода, когда пользователь хочет открыть веб-ссылку в браузере.
Веб-страница со ссылкой в ​​приложении в красном поле слева и браузером в приложении.   показано справа.
Рисунок 3. Нажатие на ссылку в приложении (слева) и открытие браузера внутри приложения (справа).

3. Вход или аутентификация в вашем приложении.

Рекомендуемый подход Android — создать потоки входа или аутентификации с помощью Credential Manager . Если вы обнаружите, что вам все еще необходимо использовать Embedded Web для этих возможностей, воспользуйтесь следующими рекомендациями:

  • Некоторые приложения используют WebViews для обеспечения потоков входа для своих пользователей, включая использование имени пользователя и ключа доступа (или пароля), специфичных для вашего приложения. Это позволяет разработчикам унифицировать потоки аутентификации на разных платформах.
  • При подключении к стороннему поставщику удостоверений или при входе в систему, например «Войти с помощью…», лучше всего использовать пользовательские вкладки. Запуск пользовательских вкладок гарантирует, что учетные данные пользователя остаются защищенными и изолированными от стороннего сайта.

Дополнительные сведения об использовании WebViews для аутентификации см. в разделе Аутентификация пользователей с помощью WebView . Информацию о запуске пользовательской вкладки см. в разделе Обзор пользовательских вкладок Android .

Поле входа в приложение с WebView слева.Сторонний вход с пользовательской вкладкой справа.
Рисунок 4. Поле входа в приложение (слева) и сторонний вход, открытый на настраиваемой вкладке (справа).