Вебкит

Работайте с современными API WebView на Android 5 и выше.
Последнее обновление Стабильный релиз Предварительная версия релиза Бета-версия Альфа-версия
17 декабря 2025 г. 1.15.0 - - -

Объявление зависимостей

Чтобы добавить зависимость от Webkit, необходимо добавить репозиторий Google Maven в ваш проект. Для получения дополнительной информации ознакомьтесь с информацией в репозитории Google Maven .

Добавьте зависимости для необходимых артефактов в файл build.gradle вашего приложения или модуля:

классный

dependencies {
    implementation "androidx.webkit:webkit:1.15.0"
}

Котлин

dependencies {
    implementation("androidx.webkit:webkit:1.15.0")
}

Для получения дополнительной информации о зависимостях см. раздел «Добавление зависимостей сборки» .

Обратная связь

Ваши отзывы помогают улучшить Jetpack. Сообщите нам, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете проголосовать за существующую проблему, нажав кнопку со звездочкой.

Создать новую задачу

Для получения более подробной информации см. документацию по системе отслеживания ошибок .

Версия 1.15

Версия 1.15.0

17 декабря 2025 г.

Выпущена версия androidx.webkit:webkit:1.15.0 . Версия 1.15.0 содержит следующие коммиты .

Важные изменения с версии 1.14.0

В этом релизе minSdk увеличен с API 21 до API 23. Также добавлены следующие новые возможности API:

  • Доступ к файлам cookie и их установка в рамках коллбэков shouldInterceptRequest для WebView и Service Workers. Разработчики приложений, которые в настоящее время обращаются к API CookieManager в рамках своих shouldInterceptRequest теперь могут вместо этого напрямую включить заголовки cookie, вызвав WebViewCompat#setCookiesIncludedInShouldInterceptRequest . Это приведет к тому, что WebView добавит заголовок Cookie в карту WebResourceRequest.getRequestHeaders() , который будет содержать именно те файлы cookie, которые применяются к запросу. Это также корректно обработает любые разделенные файлы cookie. Приложения могут предоставлять значения заголовка Set-Cookie через недавно добавленный API WebResourceResponseCompat#setCookies . Добавленные там значения Set-Cookie будут обрабатываться WebView в рамках обработки ответа.
  • Настройка пользовательских заголовков запроса. API Profile#addCustomHeader позволяет разработчикам приложений задавать список статических пар «имя-значение» заголовка, которые будут отправляться в любых запросах, соответствующих указанному шаблону источника.
  • Разрешите настройку элементов в контекстном меню гиперссылки WebView. Вызывая метод WebViewCompat#setHyperlinkContextMenuItems , разработчики приложений могут указать, какие элементы отображаются в контекстном меню при длительном нажатии пользователем на гиперссылку.
  • Запуск предварительной отрисовки . WebViewCompat#prerenderUrlAsync позволяет приложениям предварительно отрисовывать URL-адреса перед их отображением в WebView . Предварительная отрисовка может значительно улучшить производительность загрузки, поскольку страница загружается заранее. Когда пользователь переходит по URL-адресу, предварительно отрисованная страница отображается мгновенно.
  • Управляйте параметрами кэширования BackForwardCache в WebView , вызывая API-функцию WebSettingsCompat#setBackForwardCacheSettings . Эта функция позволяет установить время ожидания в секундах или настроить ограничения кэширования страниц.
  • Наконец, удаление заголовка X-Requested-With в WebView отменено, и этот заголовок снова будет отправляться во всех запросах. Таким образом, API списка разрешенных запросов больше не нужен и устарел.

Экспериментальные API добавлены начиная с версии 1.14.0

  • Библиотека WebView также представила ряд API, которые в настоящее время находятся в экспериментальном статусе. Подробнее об этих API можно прочитать в сводке пакета . Если у вас есть какие-либо замечания по этим API, пожалуйста, поделитесь ими, отправив электронное письмо по адресу android-webview-dev@chromium.org или оставив отзыв в нашей системе отслеживания ошибок .

Следующие функции являются экспериментальными:

  • Метод ProcessGlobalConfig#setUiThreadStartupMode позволяет настроить инициализацию потока пользовательского интерфейса WebView. В частности, это позволит выбрать, должен ли запуск выполняться как единая задача или же он должен быть разбит на более мелкие задачи, передающие управление потоку Looper пользовательского интерфейса.
  • С помощью API WebViewBuilder можно создавать экземпляры WebView с ограниченной конфигурацией, которую нельзя изменить впоследствии. Изначально это означает, что теперь можно добавлять объекты JavaScript-интерфейсов, которые внедряются только в указанный список источников, что значительно повышает безопасность их использования. Это также отключит любые дальнейшие вызовы метода addJavascriptInterface для созданного экземпляра WebView , что гарантирует неизменяемую конфигурацию.
  • Расширенная информация об API WebViewCompat#startUpWebView :
  • Чтобы запустить процесс рендеринга для профиля, вызовите метод Profile#warmUpRendererProcess . Этот API может использоваться приложениями со сложным жизненным циклом WebView для обеспечения работы процесса рендеринга, даже если все экземпляры WebView были уничтожены.
  • Метод Profile#addQuicHints позволяет приложениям указывать WebView отдавать предпочтение протоколу QUIC/HTTP3 при подключении к указанным источникам.
  • Функция Profile#preconnect позволяет приложениям устанавливать соединение с источником до перехода к нему, чтобы ускорить последующую загрузку.

Экспериментальные API обновлены начиная с версии 1.14.0.

  • API Navigation Listener был обновлен, чтобы позволить приложениям предоставлять несколько экземпляров слушателя , которые при желании можно настроить с помощью пользовательского Executor для обратных вызовов фонового потока. Ранее это был API WebNavigationClient , который был признан устаревшим в пользу нового API. Кроме того, это обновление также добавляет информацию о времени в обратный вызов onFirstContentfulPaint , предоставляя информацию о времени от начала навигации до события отрисовки.

Версия 1.15.0-rc01

3 декабря 2025 г.

Выпущена версия androidx.webkit:webkit:1.15.0-rc01 . Версия 1.15.0-rc01 содержит следующие коммиты .

  • С момента выхода androidx.webkit:webkit:1.15.0-beta01 обновлений не было.

Версия 1.15.0-beta01

19 ноября 2025 г.

Выпущена версия androidx.webkit:webkit:1.15.0-beta01 . Версия 1.15.0-beta01 содержит следующие коммиты .

Изменения в API

  • Добавлены экспериментальные API WebViewBuilder ( I06828 , b/409740828 )
  • Добавить UiThreadStartupMode для асинхронного запуска, который предотвращает вызов isMultiProcessEnabled() при запуске Chromium ( I524ee , b/397372092 )
  • Скрытие форм-фактора UserAgent до выпуска версии 1.16 ( Ibac8a , b/430554841 , b/454438418 )
  • Обновлен API навигации, позволяющий приложениям предоставлять экземпляры NavigationListener , которые при желании можно настроить с помощью пользовательского Executor для обратных вызовов фонового потока. Теперь к одному WebView можно добавить несколько экземпляров NavigationListener .
    Кроме того, это обновление также добавляет информацию о времени в функцию обратного вызова onFirstContentfulPaint , предоставляя информацию о времени от начала навигации до события отрисовки. ( I6aa8e , b/448580228 )
  • Добавляет Profile#addQuicHints , позволяющий приложениям указывать WebView на предпочтение QUIC/HTTP3 при подключении к указанным источникам. ( I8e364 , b/445339041 )
  • Обновлены константы функций с экспериментальными аннотациями, а также обновлен файл README библиотеки с дополнительной информацией об экспериментальных API. ( I1b914 )

Исправлены ошибки

Версия 1.15.0-alpha03

8 октября 2025 г.

Выпущена версия androidx.webkit:webkit:1.15.0-alpha03 . Версия 1.15.0-alpha03 содержит следующие коммиты .

Изменения в API

  • Введен новый API для установки пользовательских заголовков запроса. Это усовершенствованная версия предыдущего экспериментального API, которая теперь позволяет приложению устанавливать несколько значений для каждого заголовка, каждое из которых сопоставляется с различным набором исходных шаблонов. Новый API также позволяет приложению проверять настроенные заголовки. ( Id7d30 , b/419469873 , b/429269470 )
  • Удаление заголовка X-Requested-With в WebView отменено, и этот заголовок снова будет отправляться по умолчанию во всех запросах. API allowlist больше не нужен и устарел. ( I884c3 , b/447094379 )
  • В WebSettingsCompat добавлен новый API, позволяющий разработчикам настраивать кэширование WebView , например, устанавливать время ожидания в секундах или ограничения на кэширование страниц. ( I642b2 , b/432395269 )
  • Добавить API HyperlinkContextMenu для настройки элементов в контекстном меню гиперссылок WebView ( Idb809 , b/382654667 )
  • Добавлен API getAsyncStartUpLocations для отладки случаев, когда WebView запускался асинхронно без использования API startUpWebView . ( I6bf4b , b/417434566 )

Версия 1.15.0-alpha02

27 августа 2025 г.

Выпущена версия androidx.webkit:webkit:1.15.0-alpha02 . Версия 1.15.0-alpha02 содержит следующие коммиты .

Новые функции

  • Добавляет Profile#preconnect , который позволяет приложениям устанавливать соединение с источником перед переходом к нему, чтобы ускорить последующую загрузку. ( I8db41 )
  • В WebViewCompat добавлен новый API prerenderUrlAsync , позволяющий приложениям предварительно отрисовывать URL-адреса перед их отображением в WebView.
    Предварительная отрисовка может значительно улучшить скорость загрузки, поскольку страница загружается заранее. Когда пользователь переходит по URL-адресу, предварительно отрисованная страница отображается мгновенно.
    Эти API ранее были выпущены как экспериментальные и теперь могут использоваться без аннотации @OptIn . ( IE14f5 )
  • Теперь вы можете указать набор профилей для синхронной загрузки при вызове API startUpWebView . Это настраивается путем передачи имен профилей в новый метод WebViewStartUpConfig.Builder ( I9a6e6 ).
  • В WebSettingsCompat добавлен новый API для включения/отключения кэширования назад (BackForwardCache) для объекта WebSettings . Этот API ранее был выпущен как экспериментальный и теперь может использоваться без аннотации @OptIn . ( IE413b )
  • Добавлена ​​поддержка переопределения форм-факторов User-Agent. Класс UserAgentMetadata имеет новые методы для получения и установки форм-факторов метаданных User-Agent. Класс UserAgentMetadata.Builder имеет новый метод setFormFactors() для переопределения подсказки клиента Sec-CH-UA-Form-Factors User-Agent. Текущие значения переопределения можно получить с помощью нового метода getFormFactors() . ( I6d08c , b/430554841 )

Изменения в API

  • Добавить API в ProcessGlobalConfig для настройки инициализации потока пользовательского интерфейса WebView ( I5e85a , b/433273850 , b/397372092 )
  • Добавить новое название функции для API WebViewStartupConfig.Builder#setProfilesToLoadDuringStartup ( I36451 )
  • Перенос минимального SDK по умолчанию с API 21 на API 23 ( Ibdfca , b/380448311 , b/435705964 , b/435705223 )
  • Обновлен API для проверки соответствия заголовка источнику, чтобы разрешить перезапись значений заголовка путем многократного вызова метода setOriginMatchedHeader для одного и того же имени заголовка. Также добавлен новый метод hasOriginMatchedHeader для проверки того, используется ли уже имя заголовка.
    Это изменение также указывает на то, что API является экспериментальным, поскольку в настоящее время он поддерживает только установку одного значения и сопоставление с источником для каждого значения заголовка, и, вероятно, в будущем он будет изменен, чтобы поддерживать несколько значений, сопоставленных с разными источниками. ( I03365 , b/419469873 , b/429269470 )
  • Требование к потоку пользовательского интерфейса для Profile#prefetchUrlAsync() снято. Теперь его можно вызывать из любого потока. ( I83d57 )
  • Интерфейс OutcomeReceiverCompat был удалён в пользу официальной версии androidx.core.os.OutcomeReceiverCompat . Теперь для работы библиотеки требуется compileSdk 35 или выше ( IE1ea5 ).
  • Переименовывает [is/set]IncludeCookiesOnShouldInterceptRequestEnabled в [are/set]CookiesIncludedInShouldInterceptRequest в WebSettingsCompat . ( Ife9e9 , b/428924452 )
  • Добавление экспериментальных аннотаций API к Profile.ExperimentalUrlPrefetch , которые ранее были опущены. ( Ic54eb , b/417458061 )

Версия 1.15.0-alpha01

2 июля 2025 г.

Выпущена версия androidx.webkit:webkit:1.15.0-alpha01 . Версия 1.15.0-alpha01 содержит следующие коммиты .

Новые функции

  • Новый API для установки пар "имя-значение" в заголовках HTTP в запросах к конкретным источникам.
    Метод Profile.setOriginMatchedHeader позволяет приложению указать, что имя и значение заголовка должны быть установлены для всех HTTP/HTTPS-запросов к источникам, соответствующим предоставленному списку разрешенных адресов, при отправке из WebViews и сервис-воркеров, использующих данный профиль. API допускает только одно сопоставление для каждого имени заголовка и выдаст исключение, если имя заголовка уже установлено.
    Используйте Profile.clearOriginMatchedHeader для удаления существующего сопоставления, а Profile.clearAllOriginMatchedHeaders для удаления всех сопоставлений. ( Ida7f1 , b/419469873 )
  • Новый API для доступа и установки файлов cookie в рамках коллбэков shouldInterceptRequest для WebView и Service Workers.
    Разработчики приложений, которые в настоящее время обращаются к API CookieManager в рамках своих shouldInterceptRequest теперь могут напрямую включить заголовки cookie, вызвав setIncludeCookiesOnShouldInterceptRequest . Это заставит WebView добавить заголовок Cookie в карту WebResourceRequest.getRequestHeaders() , который будет содержать именно те файлы cookie, которые применяются к запросу. Это также позволит корректно обрабатывать любые разделенные файлы cookie.
    Приложения могут передавать значения заголовка Set-Cookie через недавно добавленный API WebResourceResponseCompat.setCookies . Значения Set-Cookie добавленные туда, будут обрабатываться WebView в рамках обработки ответа. ( Idbfd1 , b/414769380 )
  • Новый экспериментальный API для предварительной подготовки процесса рендеринга Profile .
    Этот API может использоваться приложениями со сложным жизненным циклом WebView для обеспечения работы процесса рендеринга, даже если все экземпляры WebView были уничтожены. ( Ia8fc8 )

Изменения в API

  • В экспериментальный интерфейс навигации добавлен новый метод для передачи URL-адреса навигации. ( I1c6c0 )
  • Обновите название функции предварительной выборки профилирования, чтобы уточнить, что API предварительной выборки теперь можно вызывать в фоновом потоке. ( I7c83a )

Версия 1.14

Версия 1.14.0

4 июня 2025 г.

Выпущена версия androidx.webkit:webkit:1.14.0 . Версия 1.14.0 содержит следующие коммиты .

Важные изменения с версии 1.13.0

  • Представляем API PaymentRequest для вызова нативных платежных приложений Android через интент org.chromium.intent.action.PAY . PaymentRequest отключен по умолчанию, и приложения на основе WebView могут вызвать WebSettingsCompat.setPaymentRequestEnabled(settings, true), чтобы включить его. Кроме того, PaymentRequest требуется тег <queries> в AndroidManifest.xml . Дополнительную информацию см. в документации по методу setPaymentRequestEnabled() .
  • Представляем экспериментальный API навигации для расширенного отслеживания и управления веб-навигацией в WebView . Эти API предоставляют подробную информацию о событиях навигации. Для начала вызовите WebViewCompat.setNavigationClient с реализацией нового интерфейса WebNaviagationClient , чтобы получить подробную информацию о навигации по страницам. Для получения дополнительной информации о жизненном цикле навигации см. раздел «Жизненный цикл представления навигации» .

Версия 1.14.0-rc01

20 мая 2025 г.

Выпущена версия androidx.webkit:webkit:1.14.0-rc01 . Версия 1.14.0-rc01 содержит следующие коммиты .

  • Изменений по сравнению с 1.14.0-beta01 нет.

Версия 1.14.0-beta01

7 мая 2025 г.

Выпущена версия androidx.webkit:webkit:1.14.0-beta01 . Версия 1.14.0-beta01 содержит следующие коммиты .

Изменения в API

  • Добавить контекст в качестве параметра к API startUpWebView() ( Ic29cd , b/406701301 )

Версия 1.14.0-alpha01

9 апреля 2025 г.

Выпущена версия androidx.webkit:webkit:1.14.0-alpha01 . Версия 1.14.0-alpha01 содержит следующие коммиты .

Новые функции

  • Представляем API PaymentRequest для вызова нативных платежных приложений Android через интент org.chromium.intent.action.PAY . PaymentRequest отключен по умолчанию, и хост-приложения WebView могут вызвать WebSettingsCompat.setPaymentRequestEnabled(settings, true) чтобы включить его. Кроме того, PaymentRequest требуется тег <queries> в AndroidManifest.xml . Дополнительную информацию см. в документации по setPaymentRequestEnabled() . ( I3304e , b/404920055 )
  • Представляем экспериментальные обратные вызовы навигации. В этом релизе представлены экспериментальные API для расширенного отслеживания и управления веб-навигацией в WebView . Эти API предоставляют подробную информацию о событиях навигации. Ключевые особенности:
    • Интерфейс WebNavigationClient : Вводит новый интерфейс WebNavigationClient с функциями обратного вызова для событий навигации:
    • onNavigationStarted(Navigation navigation) : Уведомляет о начале навигации.
    • onNavigationRedirected(Navigation navigation) : Уведомляет о перенаправлении навигации.
    • onNavigationCompleted(Navigation navigation) : Уведомляет о завершении навигации.
    • Интерфейс Navigation : предоставляет подробную информацию о навигации, включая: URL-адрес, статус начала страницы, статус перехода по тому же документу, статус перезагрузки, статус истории, статус перехода назад/вперед, статус подтверждения, статус страницы ошибки, код состояния и статус восстановления сессии. Объект Navigation служит уникальным идентификатором для каждой навигации, позволяя разработчикам сопоставлять связанные события навигации.
    • Класс Page : Вводит класс Page , который служит ключом для данных, связанных со страницами. ( I351a6 )
  • Введен новый экспериментальный API для переключения поведения объектов поставщика кэширования. ( I14636 )

Изменения в API

  • Обновлено значение параметра PROFILE_URL_PREFETCH в WebViewFeature . ( I606fd )
  • Добавляет WebViewCompat#saveState , аналогичный WebView#saveState , но позволяющий ограничивать размер возвращаемого состояния и решать, сохранять ли записи истории. ( Iea7d6 )
  • Добавить параметр maxPrerenders в API SpeculativeLoadingConfig ( I67245 )

Версия 1.13

Версия 1.13.0

12 марта 2025 г.

Выпущена версия androidx.webkit:webkit:1.13.0 . Версия 1.13.0 содержит следующие коммиты .

Важные изменения с версии 1.12.0

  • Представляем новый экспериментальный API для предварительной отрисовки URL-адресов, позволяющий разработчикам предварительно отрисовывать потенциальные URL-адреса, что приводит к ускорению навигации. ( I0cfe7 )
  • Представляем набор новых API для удаления данных просмотра, хранящихся в WebView . Новые API в WebStorageCompat следует предпочитать существующим API в android.webkit.WebStorage , поскольку они гарантируют удаление всего локального хранилища, включая сетевой кэш и cookie, а также любых установленных сервис-воркеров. Если в будущем будут введены новые API для работы с хранилищем, эти новые методы будут обновлены, чтобы включить их в удаляемое хранилище. ( Iad54f , b/382273208 )
  • Добавьте API setPartitionedCookiesEnabled . Это позволит разработчикам включать и отключать разделенные файлы cookie в WebView . ( Ic506a , b/364904765 )
  • В WebView добавлен API для тегирования сокетов с целью учета сетевого трафика WebView с помощью NetworkStatsManager / TrafficStats . Эта функция будет доступна только начиная с WebView M133. ( Ica441 , b/374932688 )
  • Добавлен экспериментальный API асинхронного запуска WebView . ( I94b8a )
  • Предварительная загрузка URL-адресов в профиле: В Profile добавлен новый API, позволяющий разработчикам запускать предварительную загрузку URL-адресов. Очистка предварительной загрузки: Добавлен API для очистки текущих предварительных загрузок. ( I42c5c )
  • Устаревать WebView.startSafeBrowsing . ( If5626 )

Версия 1.13.0-rc01

26 февраля 2025 г.

Выпущена версия androidx.webkit:webkit:1.13.0-rc01 . В этом релизе нет изменений по сравнению с версией 1.13.0-beta01 .

Версия 1.13.0-beta01

12 февраля 2025 г.

Выпущена версия androidx.webkit:webkit:1.13.0-beta01 . Версия 1.13.0-beta01 содержит следующие коммиты .

Изменения в API

  • Добавьте суффикс Async к API предварительной отрисовки. Переименуйте все данные в заголовок в NoVarySearch , чтобы отразить новое имя. ( IE91c9 )
  • Добавить параметр исполнителя к API предварительной отрисовки URL. Также ограничить вызов API только потоком пользовательского интерфейса. ( I50520 )
  • Добавьте API для настройки конфигурации кэширования для запросов предварительной выборки профиля. Это также применяется к запросам предварительной отрисовки, инициированным из WebViews , связанных с этим профилем. ( Iebb6e )

Исправлены ошибки

  • Измените поведение функции URLUtilCompat.guessFileName таким образом, чтобы для подсказки расширения для имен файлов, полученных из параметра URL, использовался только параметр mimeType . ( I53ecd , b/382864232 )

Версия 1.13.0-alpha03

15 января 2025 г.

Выпущена версия androidx.webkit:webkit:1.13.0-alpha03 . Версия 1.13.0-alpha03 содержит следующие коммиты .

Новые функции

  • Представляем новый экспериментальный API для предварительной отрисовки URL-адресов, позволяющий разработчикам предварительно отрисовывать потенциальные URL-адреса, что приводит к ускорению навигации. ( I0cfe7 )
  • Представляем набор новых API для удаления данных просмотра, хранящихся в WebView . Новые API в WebStorageCompat следует предпочитать существующим API в android.webkit.WebStorage , поскольку они гарантируют удаление всего локального хранилища, включая сетевой кэш и cookie, а также любых установленных сервис-воркеров. Если в будущем будут введены новые API для работы с хранилищем, эти новые методы будут обновлены, чтобы включить их в удаляемое хранилище. ( Iad54f , b/382273208 )
  • Добавьте API setPartitionedCookiesEnabled . Это позволит разработчикам включать и отключать разделенные файлы cookie в WebView . ( Ic506a , b/364904765 )

Изменения в API

  • Измените требования к количеству потоков для API предварительной выборки, чтобы он вызывался только в потоке пользовательского интерфейса. ( I866b5 )
  • Обновите методы WebAuthn , чтобы указать, что они должны вызываться в потоке пользовательского интерфейса. Это требование уже обеспечивается реализацией, и данное изменение лишь добавляет соответствующую аннотацию. ( I6d6ba )

Версия 1.13.0-alpha02

11 декабря 2024 г.

Выпущена версия androidx.webkit:webkit:1.13.0-alpha02 . Версия 1.13.0-alpha02 содержит следующие коммиты .

Новые функции

  • В WebView добавлен API для тегирования сокетов с целью учета сетевого трафика WebView с помощью NetworkStatsManager / TrafficStats . Эта функция будет доступна только начиная с WebView M133. ( Ica441 , b/374932688 )

Изменения в API

  • Обновите API предварительной загрузки, переименовав PrefetchParameter в SpeculativeLoadingParamaters , добавив новое исключение PrefetchNetworkException , заменив PrefetchOperationCallback на OutcomeReceiverCompat и обновив документацию Javadoc. ( If5072 )
  • Получите диагностическую информацию из API асинхронного запуска WebView.
  • Предоставьте приложениям возможность запускать инициализацию только в том случае, если она не блокирует поток пользовательского интерфейса. ( I9bf2b )

Исправлены ошибки

  • В этой библиотеке теперь используются аннотации JSpecify для проверки на null , которые относятся к использованию типов. Разработчикам Kotlin следует использовать следующий аргумент компилятора для обеспечения корректного использования: -Xjspecify-annotations=strict (это значение по умолчанию, начиная с версии 2.1.0 компилятора Kotlin). ( I0e4c5 , b/326456246 )

Версия 1.13.0-alpha01

13 ноября 2024 г.

Выпущена версия androidx.webkit:webkit:1.13.0-alpha01 . Версия 1.13.0-alpha01 содержит следующие коммиты .

Новые функции

  • Добавлен экспериментальный API асинхронного запуска WebView . ( I94b8a )
  • Предварительная загрузка URL-адресов в профиле: В профиль добавлен новый API, позволяющий разработчикам запускать предварительную загрузку URL-адресов. Очистка предварительной загрузки: Добавлен API для очистки текущих предварительных загрузок. ( I42c5c )

Изменения в API

  • Устаревать WebView.startSafeBrowsing . ( If5626 )

Версия 1.12

Версия 1.12.1

2 октября 2024 г.

Выпущена версия androidx.webkit:webkit:1.12.1 . Версия 1.12.1 содержит следующие коммиты .

Исправлены ошибки

  • Устранена проблема, из-за которой API версии 1.12.0 не были доступны в релизе.

Версия 1.12.0

18 сентября 2024 г.

Выпущена версия androidx.webkit:webkit:1.12.0 . Версия 1.12.0 содержит следующие коммиты .

Важные изменения с версии 1.11.0

  • В WebSettingsCompat добавлен новый API для включения/отключения кэширования назад (BackForwardCache) для этого WebSettings . Этот API является экспериментальным и может быть изменен в будущем. ( aosp/3111705 )
  • В WebSettingsCompat добавлен новый API для управления поведением спекулятивной загрузки для этих WebSettings . В настоящее время доступен только предварительный рендеринг . Этот API является экспериментальным и может быть изменен в будущем. ( I13962 )
  • Добавлен новый API для включения веб-аутентификации в WebView . Разработчики могут включать/отключать вызовы WebAuthn в WebView для своих приложений, используя WebSettingsCompat#setWebAuthenticationSupport . ( I8187f )

Версия 1.12.0-rc01

4 сентября 2024 г.

Выпущена версия androidx.webkit:webkit:1.12.0-rc01 . В этом релизе нет изменений по сравнению с версией 1.12.0-beta01 .

Версия 1.12.0-beta01

21 августа 2024 г.

Выпущена версия androidx.webkit:webkit:1.12.0-beta01 . Версия 1.12.0-beta01 содержит следующие коммиты .

Исправлены ошибки

  • Удалено ручное описание доступа к новым API платформы, поскольку это происходит автоматически посредством моделирования API при использовании R8 с AGP 7.3 или более поздней версии (например, R8 версии 3.3) и для всех сборок при использовании AGP 8.1 или более поздней версии (например, D8 версии 8.1). Клиентам, не использующим AGP, рекомендуется обновиться до D8 версии 8.1 или более поздней. Подробнее см. в этой статье . ( Ia60e0 , b/345472586 )

Версия 1.12.0-alpha02

12 июня 2024 г.

Выпущена версия androidx.webkit:webkit:1.12.0-alpha02 . Версия 1.12.0-alpha02 содержит следующие коммиты .

Новые функции

  • В WebSettingsCompat добавлен новый API для включения/отключения BackForwardCache ). Этот API является экспериментальным и может быть изменен в будущем. ( I64a38 )
  • В WebSettingsCompat добавлен новый API для управления поведением спекулятивной загрузки для этих WebSettings. В настоящее время доступен только предварительный рендеринг . Этот API является экспериментальным и может быть изменен в будущем. ( I13962 )

Изменения в API

  • Некоторые методы теперь документированы с помощью @UiThread там, где это уместно. ( I6c7e0 ), ( I44541 )
  • Потокобезопасные методы теперь документированы с помощью @AnyThread ( I70189 ).
  • Увеличение minSdkVersion с 19 до 21. ( Id7a43 )

Версия 1.12.0-alpha01

17 апреля 2024 г.

Выпущена версия androidx.webkit:webkit:1.12.0-alpha01 . Версия 1.12.0-alpha01 содержит следующие коммиты .

Изменения в API

  • Добавлен новый API для включения веб-аутентификации в WebView. Developers могут включать/отключать вызовы WebAuthn в WebView для своих приложений, используя WebSettingsCompat#setWebAuthenticationSupport . ( I8187f )

Версия 1.11

Версия 1.11.0

1 мая 2024 г.

Выпущена версия androidx.webkit:webkit:1.11.0 . Версия 1.11.0 содержит следующие коммиты .

Важные изменения с версии 1.10.0

  • Разрешите приложениям управлять воспроизведением звука в WebView с помощью новых API-функций setAudioMuted и isAudioMuted , которые аналогичны отключению звука вкладки в Chrome.
  • Представлен URLUtilCompat , который поддерживает разбор заголовков Content-Disposition , использующих атрибут filename* encoded value, как определено в RFC 6266. API совместимости также напрямую предоставляет метод для разбора заголовка Content-Disposition в тех случаях, когда предлагаемое имя файла на основе URL и MIME-типа не требуется.

Версия 1.11.0-rc01

3 апреля 2024 г.

Выпущена версия androidx.webkit:webkit:1.11.0-rc01 . В этом релизе нет изменений по сравнению с версией 1.11.0-beta01 .

Версия 1.11.0-beta01

20 марта 2024 г.

Выпущена androidx.webkit:webkit:1.11.0-beta01 без каких-либо существенных изменений. Версия 1.11.0-beta01 содержит следующие коммиты .

Версия 1.11.0-alpha02

21 февраля 2024 г.

Выпущена версия androidx.webkit:webkit:1.11.0-alpha02 . Версия 1.11.0-alpha02 содержит следующие коммиты.

Новые функции

  • Добавьте методы setAudioMuted и isAudioMuted для отключения (и включения) звука WebViews . Этот метод позволит вам предотвратить воспроизведение звука WebView . ( IE7a33 )

Изменения в API

  • Класс URLUtilCompat становится окончательным, поскольку его не следует наследовать. ( I49ec1 )

Версия 1.11.0-alpha01

7 февраля 2024 г.

Выпущена версия androidx.webkit:webkit:1.11.0-alpha01 . Версия 1.11.0-alpha01 содержит следующие коммиты.

Новые функции

  • Добавлена ​​совместимость для URLUtil.guessFileName . Совместимая версия в URLUtilCompat поддерживает разбор заголовков Content-Disposition , использующих атрибут filename* encoded value, как определено в RFC 6266. API совместимости также напрямую предоставляет метод для разбора заголовка Content-Disposition в тех случаях, когда предлагаемое имя файла на основе URL и MIME-типа не требуется. ( If6ae7 , b/309927164 )

Версия 1.10

Версия 1.10.0

24 января 2024 г.

Выпущена версия androidx.webkit:webkit:1.10.0 . Версия 1.10.0 содержит следующие коммиты.

Важные изменения по сравнению с версией 1.9.0

Версия 1.10.0-rc01

10 января 2024 г.

Выпущена версия androidx.webkit:webkit:1.10.0-rc01 . В этом релизе нет изменений по сравнению с версией 1.10.0-beta01 .

Версия 1.10.0-beta01

13 декабря 2023 г.

Выпущена версия androidx.webkit:webkit:1.10.0-beta01 . Версия 1.10.0-beta01 содержит следующие коммиты.

  • Функциональных изменений по сравнению с 1.10.0-alpha01 нет.

Версия 1.10.0-alpha01

29 ноября 2023 г.

Выпущена версия androidx.webkit:webkit:1.10.0-alpha01 . Версия 1.10.0-alpha01 содержит следующие коммиты.

Новые функции

  • В WebSettingsCompat добавлен новый API для управления экспериментальным поведением API обеспечения целостности мультимедиа Android WebView: его можно либо полностью отключить, либо ограничить передачу идентификатора приложения в ответе API. Это можно переключать для всех источников и для каждого источника в отдельности.

Версия 1.9

Версия 1.9.0

29 ноября 2023 г.

Выпущена версия androidx.webkit:webkit:1.9.0 . Версия 1.9.0 содержит следующие коммиты.

Важные изменения по сравнению с версией 1.8.0

  • Добавлен новый API для многопрофильных представлений (WebViews).
    • Интерфейс Profile предоставляет различные API для получения связанных с этим профилем данных, таких как его имя, GeoLocationPermissions , ServiceWorkerController , CookieManager и WebStorage . Эти объекты являются специфичными для данного профиля, и информация не передается между различными профилями в приложении.
    • Профиль, используемый экземпляром WebView , можно изменить с помощью метода WebViewCompat#setProfile и получить с помощью метода WebViewCompat#getProfile.
    • Новая функция ProfileStore позволяет управлять доступными профилями в вашем приложении, включая профиль по умолчанию.
    • Существующие API WebView, такие как CookieManager#getInstance, будут по-прежнему работать в профиле по умолчанию.
  • Добавлен API для внедрения и выполнения JavaScript перед загрузкой страницы.
    • API WebViewCompat#addDocumentStartJavascript позволяет приложениям внедрять скрипты в WebView , которые гарантированно выполняются до выполнения каких-либо скриптов страницы. API позволяет приложению указать целевой список источников, на которых должен быть включен скрипт, гарантируя, что он будет выполняться только на нужных страницах. В отличие от WebView#evaluateJavascript , этот API позволяет выполнять скрипты во встроенных Iframe при их загрузке. Приложения могут использовать этот новый API в сочетании с WebViewCompat#addWebMessageListener для надежной двусторонней связи с JavaScript на странице.
  • Добавлены API для изменения способа регистрации событий в рамках механизма атрибуции отчетов в песочнице конфиденциальности.
    • Мы добавили новый API WebSettingsCompat#setAttributionRegistrationBehavior , который позволяет разработчикам настраивать, регистрируются ли источники и триггеры атрибуции как исходящие из самого приложения или из веб-контента в WebView. Этот метод также можно использовать для отключения отчетов об атрибуции в WebView. Кроме того, мы добавили новый API WebSettingsCompat#getAttributionRegistrationBehavior для получения текущего поведения.
    • Для получения более подробной информации см. документацию по «песочнице конфиденциальности» .
  • Добавлены API для переопределения метаданных пользовательского агента для подсказок клиента.
    • Мы представили новый API, WebSettingsCompat#setUserAgentMetadata, для переопределения метаданных пользовательского агента для WebView, используемых для заполнения подсказок клиента пользовательского агента, а также добавили еще один новый API WebSettingsCompat#getUserAgentMetadata для получения текущих переопределений пользовательского агента. Мы рекомендуем приложениям использовать новый API для установки правильных значений переопределения всякий раз, когда приложение изменяет строку пользовательского агента по умолчанию с помощью WebSettings.setUserAgentString, чтобы гарантировать использование правильных значений во всех ситуациях.

Версия 1.9.0-rc01

15 ноября 2023 г.

Выпущена версия androidx.webkit:webkit:1.9.0-rc01 . В этом релизе нет изменений по сравнению с версией 1.9.0-beta01 .

Версия 1.9.0-beta01

1 ноября 2023 г.

Выпущена версия androidx.webkit:webkit:1.9.0-beta01 . Версия 1.9.0-beta01 содержит следующие коммиты.

Изменения в API

  • Исправлена ​​проблема с возможностью получения значений NULL в API метаданных пользовательского агента. Мы обновили класс BrandVersion , чтобы он использовал шаблон проектирования Builder, и обеспечили согласованность в отношении возможности получения значений NULL для геттеров и сеттеров класса UserAgentMetadata . ( Ibf195 )
  • Аннотирование ProfileStore , WebViewCompat#setProfile и WebViewCompat.getProfile с помощью @UiThread . ( I499b2 )

Версия 1.9.0-alpha01

18 октября 2023 г.

Выпущена версия androidx.webkit:webkit:1.9.0-alpha01 . Версия 1.9.0-alpha01 содержит следующие коммиты.

Новые функции

  • Мы добавили API для работы с несколькими профилями, который позволяет создавать отдельные сеансы просмотра для каждого WebViews ; каждый профиль имеет свои собственные данные (например, cookie). Вы можете создавать профили, назначать их экземплярам WebView и получать к ним доступ позже для любых данных. Существует класс-синглтон ProfileStore , который помогает управлять профилями путем создания или удаления с помощью API: getOrCreateProfile , getProfile , getAllProfileNames и deleteProfile . Класс Profile будет иметь различные API для получения связанных с этим профилем данных, таких как его имя, GeoLocationPermissions , ServiceWorkerController , CookieManager и WebStorage . Каждый WebView по умолчанию будет работать с профилем по умолчанию, однако вы можете изменить это с помощью WebViewCompat#setProfile В связи с этим, профиль WebView можно получить с помощью WebViewCompat#getProfile . ( I32d22 )
  • Добавлены API для изменения способа регистрации событий Attribution Reporting. Мы представили новый API WebSettingsCompat#setAttributionRegistrationBehavior , который позволяет разработчикам настраивать, регистрируются ли источники и триггеры как исходящие из самого приложения или из веб-контента в WebView . Этот метод также можно использовать для отключения Attribution Reporting в WebView . Кроме того, мы добавили новый API WebSettingsCompat#getAttributionRegistrationBehavior для получения текущего поведения. Для получения дополнительной информации см. документацию Privacy Sandbox . ( I661f2 )
  • Добавлены API для переопределения метаданных user-agent. Мы представили новый API WebSettingsCompat#setUserAgentMetadata для переопределения метаданных user-agent для WebView, которые используются для заполнения подсказок клиента user-agent, а также добавили еще один новый API WebSettingsCompat#getUserAgentMetadata для получения текущих переопределений user-agent. Мы рекомендуем приложениям использовать новый API для установки правильных значений переопределения вместо того, чтобы полагаться на изменение user-agent. ( I74500 )
  • Add an API to inject Javascript to be run during page load. The WebViewCompat.addDocumentStartJavascript API allows apps to inject scripts into a WebView which will be run before any page scripts are executed. The API allows the app to specify a target list of origins for the script to be enabled on, ensuring that it only runs on intended pages. Unlike WebView.evaluateJavascript , this API will allow execution of scripts in embedded Iframes when they load. ( Ide063 )

Версия 1.8

Версия 1.8.0

6 сентября 2023 г.

androidx.webkit:webkit:1.8.0 is released. Version 1.8.0 contains these commits.

Important changes since 1.7.0

Версия 1.8.0-rc01

9 августа 2023 г.

androidx.webkit:webkit:1.8.0-rc01 is released with no changes since 1.8.0-beta01 . Version 1.8.0-rc01 contains these commits.

Версия 1.8.0-beta01

26 июля 2023 г.

androidx.webkit:webkit:1.8.0-beta01 is released with no changes since 1.8.0-alpha01 . Version 1.8.0-beta01 contains these commits.

Версия 1.8.0-alpha01

7 июня 2023 г.

androidx.webkit:webkit:1.8.0-alpha01 is released. Version 1.8.0-alpha01 contains these commits.

Изменения в API

  • See the External Contribution section.

Внешний вклад

  • Add support for passing ArrayBuffer over WebMessagePortCompat#postMessage , JsReplyProxy#postMessage and WebViewCompat#postWebMessage , receiving ArrayBuffer from JavaScript over WebMessagePortCompat and WebMessageListener , and receiving transferable ArrayBuffer from JavaScript over WebMessagePortCompat . Please note that this API will only be available from WebView version 116. ( Ie7567 , b/251152171 )

Версия 1.7

Версия 1.7.0

24 мая 2023 г.

androidx.webkit:webkit:1.7.0 is released. Version 1.7.0 contains these commits.

Важные изменения по сравнению с версией 1.6.0

  • We added support for Image drag in WebView . You can enable your users to drag images out of the WebView by adding the new DropDataContentProvider to your app's manifest as described in the class documentation.
  • We added the ProcessGlobalConfig#setDirectoryBasePaths(Context,File,File) API which can be used to set the base directories that WebView will use for the current process. As with all methods on ProcessGlobalConfig , this method must be called before the first instance of WebView is instantiated. This method is added to provide Android framework the capability to tweak WebView settings. For general purpose applications, using this method is not recommended.

Версия 1.7.0-rc01

10 мая 2023 г.

androidx.webkit:webkit:1.7.0-rc01 is released with no changes since 1.7.0-beta01 . Version 1.7.0-rc01 contains these commits.

Версия 1.7.0-beta01

5 апреля 2023 г.

androidx.webkit:webkit:1.7.0-beta01 is released. Version 1.7.0-beta01 contains these commits.

Изменения в API

  • Minor change to feature flag and method name and make setDirectoryBasePaths() accept File instead of String ( Ib0d0a )

Версия 1.7.0-alpha03

8 марта 2023 г.

androidx.webkit:webkit:1.7.0-alpha03 is released. Version 1.7.0-alpha03 contains these commits.

Изменения в API

  • Add ProcessGlobalConfig#setDirectoryBasePath(String, String) API which can be used to set the base directories that WebView will use for the current process. ( Ibd1a1 , b/250553687 )

Исправлены ошибки

  • Fix invalid ProGuard rule causing build errors when using DexGuard ( Ia65c2 , b/270034835 )

Версия 1.7.0-alpha02

8 февраля 2023 г.

androidx.webkit:webkit:1.7.0-alpha02 is released. Version 1.7.0-alpha02 contains these commits.

Исправлены ошибки

  • Documentation bugs for DropDataContentProvider .

Версия 1.7.0-alpha01

25 января 2023 г.

androidx.webkit:webkit:1.7.0-alpha01 is released. Version 1.7.0-alpha01 contains these commits.

Новые функции

  • We are adding support for Image drag in WebView . You can enable your users to drag images out of the WebView by adding the new DropDataContentProvider to your app's manifest. ( 05a1a6 )

Версия 1.6

Версия 1.6.1

22 марта 2023 г.

androidx.webkit:webkit:1.6.1 is released. Version 1.6.1 contains these commits.

Исправлены ошибки

  • Fix proguard parse error ( Ia65c2 )

Версия 1.6.0

25 января 2023 г.

androidx.webkit:webkit:1.6.0 is released. Version 1.6.0 contains these commits.

Important changes since 1.5.0

  • A new ProcessGlobalConfig API has been added to allow apps to provide configuration settings that need to be set before loading WebView, such as the WebView data directory suffix. The configuration should be set up and applied as early as possible during application startup, to ensure that it happens before any other thread can call a method that loads WebView into the process.
  • A new CookieManagerCompat API has been added to expand android.webkit.CookieManager with a new getCookieInfo method, which retrieves all attributes for all cookies set on a specific URL. This differs from the existing getCookie API in CookieManager which returns only the name and value attributes of the cookies.
  • WebSettingsCompat has new methods to enable/disable the effect of EnterpriseAuthenticationAppLinkPolicy if set by admin in WebView , and to get the current setting . This feature lets WebView open an Authentication app instead of opening the authentication URL. This feature has no effect on devices that are not managed by an enterprise policy.
  • Adding a new API to WebSettingsCompat to let applications explicitly send the app package name in the X-Requested-With header to allowlisted origins. The header has traditionally been sent on every request from WebView .

Версия 1.6.0-rc01

11 января 2023 г.

androidx.webkit:webkit:1.6.0-rc01 is released. Version 1.6.0-rc01 contains these commits.

Исправлены ошибки

  • Fixed NullPointerException in WebViewFeature.isStartupFeatureSupported(Context, String) when running on SDK < L. ( Ic7292 )

Версия 1.6.0-beta01

7 декабря 2022 г.

androidx.webkit:webkit:1.6.0-beta01 is released. Version 1.6.0-beta01 contains these commits.

Изменения в API

  • ProcessGlobalConfig has been changed to use a normal constructor and a static apply method. The apply method should only be called once per process, as early as possible, and will throw IllegalStateException if called more than once. ProcessGlobalConfig objects no longer have any restrictions on how many times setters can be called. ( I456c3 )

Версия 1.6.0-alpha03

9 ноября 2022 г.

androidx.webkit:webkit:1.6.0-alpha03 is released. Version 1.6.0-alpha03 contains these commits.

Новые функции

  • Add ProcessGlobalConfig class enabling users to set process global config before loading WebView . WebView has some process-global configuration parameters that cannot be changed once WebView has been loaded (eg the WebView data directory). This class allows apps to set these parameters. The configuration should be set up and applied as early as possible during application startup, to ensure that it happens before any other thread can call a method that loads WebView into the process. ( I7c0e0 , b/250553687 )
  • Adding new API to let applications explicitly send the app package name in the X-Requested-With header to allowlisted origins. The header has traditionally been sent on every request from WebView . ( I0adfe , b/226552535 )

Изменения в API

  • The WebSettingsCompat#setAlgorithmicDarkeningAllowed API is supported on all Android versions in WebView version 105 and later. Previous versions of WebView only supported the API on Android Q and later. As a result, this api is no longer marked @RequiresApi(Build.VERSION_CODES.Q) . ( I3ac1d )

Версия 1.6.0-alpha02

24 октября 2022 г.

androidx.webkit:webkit:1.6.0-alpha02 is released. Version 1.6.0-alpha02 contains these commits.

Новые функции

  • Adds a new CookieManagerCompat class along with a getCookieInfo API which retrieves all attributes for all cookies set on a specific URL. This differs from the existing getCookie API in CookieManager which returns only the name and value attributes of the cookies. ( I07365 , b/242161756 )

Версия 1.6.0-alpha01

24 августа 2022 г.

androidx.webkit:webkit:1.6.0-alpha01 is released. Version 1.6.0-alpha01 contains these commits.

Новые функции

  • Added APIs in WebSettingsCompat to enable/disable the effect of EnterpriseAuthenticationAppLinkPolicy if set by admin in WebView . This feature lets WebView open an Authentication app instead of opening the authentication URL. This feature has no effect on devices that are not managed by an enterprise policy.

Версия 1.5.0

Версия 1.5.0

24 августа 2022 г.

androidx.webkit:webkit:1.5.0 is released. Version 1.5.0 contains these commits.

Важные изменения по сравнению с версией 1.4.0

  • A new setAlgorithmicDarkeningAllowed API on WebSettingsCompat replaces the old setForceDark and setForceDarkStrategy APIs. Apps targeting SDK 33 and higher (T) should use the new API, as the old API will no longer have any effect for those apps.
  • An allow-list of URLs to use the configured proxy can now be set through ProxyCofig.Builder by setting setReverseBypassEnabled to true . When this is in effect, all other URLs will bypass the configured proxy.

Версия 1.5.0-rc01

10 августа 2022 г.

androidx.webkit:webkit:1.5.0-rc01 is released with no changes since 1.5.0-beta01 . Version 1.5.0-rc01 contains these commits.

Версия 1.5.0-beta01

29 июня 2022 г.

androidx.webkit:webkit:1.5.0-beta01 is released. Version 1.5.0-beta01 contains these commits.

Изменения в API

  • Alogrithimic Darkening related APIs are now annotated to require API level Q. The API will not have any effect on API levels < Q, since dark theme is not an option on these devices. ( I0905e )

Версия 1.5.0-alpha01

18 мая 2022 г.

androidx.webkit:webkit:1.5.0-alpha01 is released. Version 1.5.0-alpha01 contains these commits.

Новые функции

  • Add a new getVariationsHeader() method on WebViewCompat to get the X-Client-Data header value sent by the WebView . The returned value will be a base64 encoded ClientVariations protobuf.
  • Add APIs on WebSettingsCompat to allow/disallow algorithmic darkening for app with targetSdk >= 33. ( I29597 )

Изменения в API

  • Add a new method in ProxyCofig.Builder to set reverse bypass. Setting reverse bypass to true means only URLs in the bypass list will use the proxy settings. ( I9eaa2 , b/168728599 )

Исправлены ошибки

  • Fixed a typo in dark theme documentation. ( I36ebf , b/194343633 )
  • Fixed a bug where WebViewAssetLoader.Builder methods were unintentionally order-dependent. ( If420d , b/182196765 )

Версия 1.4.0

Версия 1.4.0

16 декабря 2020 г.

androidx.webkit:webkit:1.4.0 is released. Version 1.4.0 contains these commits.

Major changes since 1.3.0

  • Added a new setSafeBrowsingAllowlist() API to replace setSafeBrowsingWhitelist() . This helps apps update their code to avoid non-inclusive terminology, while still supporting the same range of Android SDKs and WebView versions as the deprecated API.
  • Fixed a bug in setProxyOverride that caused fallback rules not being correctly applied.

Version 1.4.0-rc02

2 декабря 2020 г.

androidx.webkit:webkit:1.4.0-rc02 is released. Version 1.4.0-rc02 contains these commits.

Исправлены ошибки

  • Fixes fallback rules not being correctly applied when using setProxyOverride.

Version 1.4.0-rc01

11 ноября 2020 г.

androidx.webkit:webkit:1.4.0-rc01 is released with no changes since 1.4.0-beta01 . Version 1.4.0-rc01 contains these commits.

Version 1.4.0-beta01

14 октября 2020 г.

androidx.webkit:webkit:1.4.0-beta01 is released with no changes since 1.4.0-alpha01 . Version 1.4.0-beta01 contains these commits.

Версия 1.4.0-alpha01

16 сентября 2020 г.

androidx.webkit:webkit:1.4.0-alpha01 is released. Version 1.4.0-alpha01 contains these commits.

Изменения в API

  • Added a new WebViewCompat#setSafeBrowsingAllowlist() API to replace setSafeBrowsingWhitelist() . This helps apps update their code to avoid non-inclusive terminology, while still supporting the same range of Android SDKs and WebView versions as the deprecated API. ( I8d65d )

Версия 1.3.0

Версия 1.3.0

19 августа 2020 г.

androidx.webkit:webkit:1.3.0 is released. Version 1.3.0 contains these commits.

Major changes since 1.2.0

  • ForceDarkStrategy API provides more control to WebView darkening (CSS/web content darkening versus auto darkening).
  • WebMessageListener and its related APIs provide a simple and secure mechanism to establish communication between web contents and the WebView embedder app.
  • isMultiProcessEnabled API to check whether WebView is running in multi process. This is possible starting in Android O and it means web content is rendered in a sandboxed renderer process separate to the application process. This sandboxed renderer may be shared with other WebViews in the same application but it's not shared with other application processes.

Version 1.3.0-rc02

5 августа 2020 г.

androidx.webkit:webkit:1.3.0-rc02 is released. Version 1.3.0-rc02 contains these commits.

Исправлены ошибки

  • This fixes a compatibility issue where WebMessageListener would sometimes crash during local development if your app was started with Android Studio instant run.

Версия 1.3.0-rc01

24 июня 2020 г.

androidx.webkit:webkit:1.3.0-rc01 is released with no changes since 1.3.0-beta01 . Version 1.3.0-rc01 contains these commits.

Версия 1.3.0-beta01

10 июня 2020 г.

androidx.webkit:webkit:1.3.0-beta01 is released. Version 1.3.0-beta01 contains these commits.

Новые функции

  • ForceDarkStrategy API to control WebView darkening (CSS/web content darkening versus auto darkening).
  • WebMessageListener APIs provide a simple and secure mechanism to establish communication between web contents and the WebView embedder app.
  • MultiProcessEnabled API to check if WebView is running in multi process mode.

Версия 1.3.0-alpha03

May 27, 2020

androidx.webkit:webkit:1.3.0-alpha03 is released. Version 1.3.0-alpha03 contains these commits.

Изменения в API

  • addWebMessageListener method now receives a Set<String> of allowed origin rules (previously a List<String> ).

Версия 1.3.0-alpha02

29 апреля 2020 г.

androidx.webkit:webkit:1.3.0-alpha02 is released. Version 1.3.0-alpha02 contains these commits.

Новые функции

  • MultiProcessEnabled API to check if WebView is running in multi process mode.

Изменения в API

  • All dark strategy constants are now prefixed with DARK_STRATEGY .

Версия 1.3.0-alpha01

15 апреля 2020 г.

androidx.webkit:webkit:1.3.0-alpha01 is released. Version 1.3.0-alpha01 contains these commits.

Новые функции

  • ForceDarkStrategy API to control WebView darkening (CSS/web content darkening versus auto darkening).
  • WebMessageListener APIs provide a simple and secure mechanism to establish communication between web contents and the WebView embedder app.

Версия 1.2.0

Версия 1.2.0

4 марта 2020 г.

androidx.webkit:webkit:1.2.0 is released. Version 1.2.0 contains these commits.

Major changes since 1.1.0

  • Added the ForceDark API to control if WebViews should be rendered in dark mode.

Версия 1.2.0-rc01

19 февраля 2020 г.

androidx.webkit:webkit:1.2.0-rc01 is released with no changes since 1.2.0-beta01 . Version 1.2.0-rc01 contains these commits.

Версия 1.2.0-beta01

5 февраля 2020 г.

androidx.webkit:webkit:1.2.0-beta01 is released with no changes since 1.2.0-alpha01 . Version 1.2.0-beta01 contains these commits .

Версия 1.2.0-alpha01

18 декабря 2019 г.

androidx.webkit:webkit:1.2.0-alpha01 is released. Version 1.2.0-alpha01 contains these commits .

Новые функции

  • ForceDark API to control if WebViews should be rendered in dark mode.

Версия 1.1.0

Версия 1.1.0

7 ноября 2019 г.

androidx.webkit:webkit:1.1.0 is released. Version 1.1.0 contains these commits .

Важные изменения с версии 1.0.0

  • Getter APIs to complement setWebViewClient() and setWebChromeClient() .
  • ProxyController API to set a network request proxy for an app's WebViews.
  • WebViewAssetLoader API to simplify loading APK assets, resources, and files from the app data directory via request interception. This allows access to web and local resources without disabling CORS.
  • TracingController API to collect WebView tracing information for debugging purposes.
  • RenderProcess APIs to manage WebView renderer services, and to detect when poorly behaved content causes WebView renderers to become unresponsive.
  • Updated existing APIs to include nullability ( @NonNull , @Nullable ) and thread ( @UiThread , @WorkerThread ) annotations.

Версия 1.1.0-rc01

9 октября 2019 г.

androidx.webkit:webkit:1.1.0-rc01 is released. Version 1.1.0-rc01 contains these commits .

Исправлены ошибки

  • Fixed an issue where setWebViewRenderProcessClient() could crash if passed a null client.

Версия 1.1.0-beta01

5 сентября 2019 г.

androidx.webkit:webkit:1.1.0-beta01 is released. The commits included in this version can be found here .

Новые функции

  • New InternalStoragePathHandler in WebViewAssetLoader to load files from the app's data directory.

изменения API

  • ProxyConfig#getProxyRules() now returns an unmodifiable list of ProxyRule instances, which is a new class to hold a scheme filter and its corresponding proxy URL.

Исправлены ошибки

  • WebViewAssetLoader defaults to a "text/plain" MIME type (rather than null) when it can't guess the MIME type from the file path.
  • WebViewAssetLoader no longer throws a NullPointerException when loading files with special characters in their path names.

Версия 1.1.0-alpha02

7 августа 2019 г.

androidx.webkit:webkit:1.1.0-alpha02 is released. The commits included in this version can be found here .

Новые функции

  • WebViewAssetLoader exposes the PathHandler interface to allow apps to create custom path-handling functionality.

изменения API

  • WebViewAssetLoader is now a final class, since it's not meant to be subclassed.
  • WebViewAssetLoader#PathHandler implementations are now public and final.
  • Minor changes to ProxyConfig method names.
  • ProxyController : added new methods addDirect() and addDirect(String) to connect directly to servers; removed DIRECT String.
  • Updated existing APIs to include nullability ( @NonNull , @Nullable ) and thread ( @UiThread , @WorkerThread ) annotations.

Версия 1.1.0-alpha01

7 мая 2019 г.

androidx.webkit:webkit:1.1.0-alpha01 is released. The commits included in this version can be found here .

Новые функции

  • Getter APIs to complement setWebViewClient() and setWebChromeClient()
  • ProxyController API to set a network request proxy for an app's WebViews.
  • AssetLoader API to simplify loading APK assets and resources via request interception, allowing access to web resources without disabling CORS.
  • TracingController API to collect WebView tracing information for debugging purposes.
  • RenderProcess APIs to manage WebView renderer services, and to detect when poorly behaved content causes WebView renderers to become unresponsive.

Исправлены ошибки

  • Minor fixes to documentation formatting for existing APIs.