Как использовать веб-контент в приложении для Android

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

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

  • WebView показывает веб-контент, которым вы управляете, в том месте, где вам нужна высокая степень гибкости при настройке или обновлении интерфейса.
  • Custom Tabs – полноценный браузер, встроенный в приложение и работающий на основе браузера по умолчанию (подробнее о поддержке браузеров). Он позволяет пользователям переходить по ссылкам, не покидая приложение.
Приложение Android, открытое в Google Play, с выделенным основным веб-просмотром. Специальная вкладка с открытой веб-страницей Android для разработчиков, выделено.
Рисунок 1. `WebView` (слева) и `Custom Tab` (справа).

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

У встраивания веб-контента в приложение есть несколько преимуществ:

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

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

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

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

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

2. Просмотр в приложении с помощью Custom Tabs или WebView для более сложных сценариев использования.

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

3. Процессы входа или аутентификации в приложении.

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

  • Некоторые приложения используют WebView, чтобы предоставлять пользователям процессы входа, в том числе с использованием имени пользователя и ключа доступа (или пароля), относящихся к вашему приложению. Это позволяет разработчикам унифицировать процессы аутентификации на разных платформах.
  • Если вы хотите добавить ссылку на стороннего поставщика идентификационной информации или способ входа, например "Войти с помощью…", используйте Custom Tabs. Custom Tab помогает защитить учетные данные пользователя, изолируя их на стороннем сайте.

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

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