Вебкит

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

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

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

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

классный

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

Котлин

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

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

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

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

Создать новый выпуск

Более подробную информацию смотрите в документации Issue Tracker .

Версия 1.14

Версия 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-альфа01

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 )
  • Добавить API тегирования сокетов в WebView для учета сетевого трафика WebView с помощью NetworkStatsManager / TrafficStats . Эта функция будет доступна только из WebView M133. ( Ica441 , b/374932688 )
  • Добавить экспериментальный API асинхронного запуска WebView . ( I94b8a )
  • URL Prefetching in Profile: Введен новый API в Profile , позволяющий разработчикам запускать URL prefetching. Prefetch Clearing: Добавлен API для очистки текущих prefetch.( 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-альфа03

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-альфа02

11 декабря 2024 г.

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

Новые возможности

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

Изменения API

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

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

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

Версия 1.13.0-альфа01

13 ноября 2024 г.

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

Новые возможности

  • Добавить экспериментальный API асинхронного запуска WebView . ( I94b8a )
  • URL Prefetching in Profile: Введен новый API в Profile, позволяющий разработчикам запускать URL prefetching. Prefetch Clearing: Добавлен API для очистки текущих prefetch. ( 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

  • Добавьте новый API в WebSettingsCompat для включения/отключения BackForwardCache для этого WebSettings . Этот API является экспериментальным и может быть изменен в будущем. ( aosp/3111705 )
  • Добавьте новый API в WebSettingsCompat для управления поведением Speculative Loading для этого WebSettings . На данный момент доступен только Prerender . Этот 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-альфа02

12 июня 2024 г.

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

Новые возможности

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

Изменения API

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

Версия 1.12.0-альфа01

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* , как определено в 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-альфа02

21 февраля 2024 г.

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

Новые возможности

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

Изменения API

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

Версия 1.11.0-альфа01

7 февраля 2024 г.

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

Новые возможности

  • Добавьте совместимость для URLUtil.guessFileName . Совместимая версия в URLUtilCompat поддерживает разбор заголовков Content-Disposition , которые используют атрибут закодированного значения filename* , как определено в 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

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

Версия 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-альфа01

29 ноября 2023 г.

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

Новые возможности

  • Добавлен новый API в WebSettingsCompat для управления экспериментальным поведением API Android WebView Media Integrity , либо полностью отключив API, либо ограничив совместное использование идентификатора приложения в ответе 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 для изменения способа регистрации событий Privacy Sandbox Attribution Reporting.
    • Мы представили новый API WebSettingsCompat#setAttributionRegistrationBehavior , который позволяет разработчикам настраивать, регистрируются ли источники и триггеры атрибуции как поступающие из самого приложения или из веб-контента в WebView. Этот метод также можно использовать для отключения Attribution Reporting в WebView. Кроме того, мы добавили новый API WebSettingsCompat#getAttributionRegistrationBehavior для получения текущего поведения.
    • Более подробную информацию см. в документации Privacy Sandbox .
  • Добавлены API для переопределения метаданных пользовательского агента для клиентских подсказок.
    • Мы ввели новый API, WebSettingsCompat#setUserAgentMetadata, для переопределения метаданных user-agent для WebView, используемых для заполнения клиентских подсказок user-agent, а также добавили еще один новый API WebSettingsCompat#getUserAgentMetadata для получения текущих переопределений user-agent. Мы призываем приложения использовать новый API для установки правильных значений переопределения всякий раз, когда приложение изменяет строку user-agent по умолчанию с помощью 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 метаданных user-agent. Мы обновляем класс BrandVersion для использования шаблона строителя, делаем недопустимость значений NULL в геттерах и сеттерах класса UserAgentMetadata согласованной. ( Ibf195 )
  • Аннотирование ProfileStore , WebViewCompat#setProfile и WebViewCompat.getProfile с помощью @UiThread . ( I499b2 )

Версия 1.9.0-альфа01

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 )
  • Добавьте API для внедрения Javascript, который будет запущен во время загрузки страницы. API WebViewCompat.addDocumentStartJavascript позволяет приложениям внедрять скрипты в WebView, которые будут запущены до выполнения любых скриптов страницы. API позволяет приложению указать целевой список источников для включения скрипта, гарантируя, что он будет запущен только на предполагаемых страницах. В отличие от WebView.evaluateJavascript , этот API позволит выполнять скрипты во встроенных Iframe при их загрузке. ( Ide063 )

Версия 1.8

Версия 1.8.0

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

Выпущен androidx.webkit:webkit:1.8.0 . Версия 1.8.0 содержит эти коммиты.

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

Версия 1.8.0-rc01

9 августа 2023 г.

androidx.webkit:webkit:1.8.0-rc01 выпущен без изменений с 1.8.0-beta01 . Версия 1.8.0-rc01 содержит эти коммиты.

Версия 1.8.0-beta01

26 июля 2023 г.

androidx.webkit:webkit:1.8.0-beta01 выпущен без изменений с 1.8.0-alpha01 . Версия 1.8.0-beta01 содержит эти коммиты.

Версия 1.8.0-альфа01

7 июня 2023 г.

Выпущен androidx.webkit:webkit:1.8.0-alpha01 . Версия 1.8.0-alpha01 содержит эти коммиты.

Изменения API

  • См. раздел «Внешний вклад».

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

  • Добавить поддержку передачи ArrayBuffer через WebMessagePortCompat#postMessage , JsReplyProxy#postMessage и WebViewCompat#postWebMessage , получения ArrayBuffer из JavaScript через WebMessagePortCompat и WebMessageListener , а также получения передаваемого ArrayBuffer из JavaScript через WebMessagePortCompat . Обратите внимание, что этот API будет доступен только с версии WebView 116. ( Ie7567 , b/251152171 )

Версия 1.7

Версия 1.7.0

24 мая 2023 г.

Выпущен androidx.webkit:webkit:1.7.0 . Версия 1.7.0 содержит эти коммиты.

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

  • Мы добавили поддержку перетаскивания изображений в WebView . Вы можете разрешить своим пользователям перетаскивать изображения из WebView , добавив новый DropDataContentProvider в манифест вашего приложения, как описано в документации класса.
  • Мы добавили API ProcessGlobalConfig#setDirectoryBasePaths(Context,File,File) , который можно использовать для установки базовых каталогов, которые WebView будет использовать для текущего процесса. Как и все методы в ProcessGlobalConfig , этот метод должен быть вызван до создания первого экземпляра WebView . Этот метод добавлен для предоставления фреймворку Android возможности настраивать параметры WebView . Для приложений общего назначения использование этого метода не рекомендуется.

Версия 1.7.0-rc01

10 мая 2023 г.

androidx.webkit:webkit:1.7.0-rc01 выпущен без изменений с 1.7.0-beta01 . Версия 1.7.0-rc01 содержит эти коммиты.

Версия 1.7.0-beta01

5 апреля 2023 г.

Выпущен androidx.webkit:webkit:1.7.0-beta01 . Версия 1.7.0-beta01 содержит эти коммиты.

Изменения API

  • Небольшие изменения в флаге функции и имени метода, а также добавление setDirectoryBasePaths() для приема File вместо String ( Ib0d0a )

Версия 1.7.0-альфа03

8 марта 2023 г.

Выпущен androidx.webkit:webkit:1.7.0-alpha03 . Версия 1.7.0-alpha03 содержит эти коммиты.

Изменения API

  • Добавить API ProcessGlobalConfig#setDirectoryBasePath(String, String) , который можно использовать для установки базовых каталогов, которые WebView будет использовать для текущего процесса. ( Ibd1a1 , b/250553687 )

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

  • Исправлено недействительное правило ProGuard , вызывающее ошибки сборки при использовании DexGuard ( Ia65c2 , b/270034835 ).

Версия 1.7.0-альфа02

8 февраля 2023 г.

Выпущен androidx.webkit:webkit:1.7.0-alpha02 . Версия 1.7.0-alpha02 содержит эти коммиты.

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

  • Ошибки документации для DropDataContentProvider .

Версия 1.7.0-альфа01

25 января 2023 г.

Выпущен androidx.webkit:webkit:1.7.0-alpha01 . Версия 1.7.0-alpha01 содержит эти коммиты.

Новые возможности

  • Мы добавляем поддержку перетаскивания изображений в WebView . Вы можете разрешить своим пользователям перетаскивать изображения из WebView , добавив новый DropDataContentProvider в манифест вашего приложения. ( 05a1a6 )

Версия 1.6

Версия 1.6.1

22 марта 2023 г.

Выпущен androidx.webkit:webkit:1.6.1 . Версия 1.6.1 содержит эти коммиты.

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

  • Исправлена ​​ошибка синтаксического анализа proguard ( Ia65c2 )

Версия 1.6.0

25 января 2023 г.

Выпущен androidx.webkit:webkit:1.6.0 . Версия 1.6.0 содержит эти коммиты.

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

  • Добавлен новый API ProcessGlobalConfig , позволяющий приложениям предоставлять параметры конфигурации, которые необходимо задать перед загрузкой WebView, например, суффикс каталога данных WebView. Конфигурация должна быть настроена и применена как можно раньше во время запуска приложения, чтобы гарантировать, что это произойдет до того, как любой другой поток сможет вызвать метод, загружающий WebView в процесс.
  • Добавлен новый API CookieManagerCompat для расширения android.webkit.CookieManager с новым методом getCookieInfo , который извлекает все атрибуты для всех файлов cookie, установленных на определенном URL. Это отличается от существующего API getCookie в CookieManager , который возвращает только атрибуты имени и значения файлов cookie.
  • WebSettingsCompat имеет новые методы для включения/отключения эффекта EnterpriseAuthenticationAppLinkPolicy , если он установлен администратором в WebView , и для получения текущей настройки . Эта функция позволяет WebView открывать приложение аутентификации вместо открытия URL аутентификации. Эта функция не влияет на устройства, которые не управляются корпоративной политикой.
  • Добавление нового API в WebSettingsCompat , чтобы позволить приложениям явно отправлять имя пакета приложения в заголовке X-Requested-With источникам из разрешенного списка. Заголовок традиционно отправлялся при каждом запросе из WebView .

Версия 1.6.0-rc01

11 января 2023 г.

Выпущен androidx.webkit:webkit:1.6.0-rc01 . Версия 1.6.0-rc01 содержит эти коммиты.

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

  • Исправлено исключение NullPointerException в WebViewFeature.isStartupFeatureSupported(Context, String) при запуске на SDK < L. ( Ic7292 )

Версия 1.6.0-beta01

7 декабря 2022 г.

Выпущен androidx.webkit:webkit:1.6.0-beta01 . Версия 1.6.0-beta01 содержит эти коммиты.

Изменения API

  • ProcessGlobalConfig был изменен для использования обычного конструктора и статического метода apply. Метод apply должен вызываться только один раз на процесс, как можно раньше, и выдаст IllegalStateException , если будет вызван более одного раза. Объекты ProcessGlobalConfig больше не имеют ограничений на количество вызовов сеттеров. ( I456c3 )

Версия 1.6.0-альфа03

9 ноября 2022 г.

Выпущен androidx.webkit:webkit:1.6.0-alpha03 . Версия 1.6.0-alpha03 содержит эти коммиты.

Новые возможности

  • Добавьте класс ProcessGlobalConfig , позволяющий пользователям устанавливать глобальную конфигурацию процесса перед загрузкой WebView . WebView имеет некоторые глобальные параметры конфигурации процесса, которые нельзя изменить после загрузки WebView (например, каталог данных WebView ). Этот класс позволяет приложениям устанавливать эти параметры. Конфигурация должна быть установлена ​​и применена как можно раньше во время запуска приложения, чтобы гарантировать, что это произойдет до того, как любой другой поток сможет вызвать метод, загружающий WebView в процесс. ( I7c0e0 , b/250553687 )
  • Добавление нового API, позволяющего приложениям явно отправлять имя пакета приложения в заголовке X-Requested-With источникам, включенным в разрешенный список. Заголовок традиционно отправлялся при каждом запросе от WebView . ( I0adfe , b/226552535 )

Изменения API

  • API WebSettingsCompat#setAlgorithmicDarkeningAllowed поддерживается на всех версиях Android в WebView версии 105 и более поздних. Предыдущие версии WebView поддерживали API только на Android Q и более поздних. В результате этот API больше не помечен как @RequiresApi(Build.VERSION_CODES.Q) . ( I3ac1d )

Версия 1.6.0-альфа02

24 октября 2022 г.

Выпущен androidx.webkit:webkit:1.6.0-alpha02 . Версия 1.6.0-alpha02 содержит эти коммиты.

Новые возможности

  • Добавляет новый класс CookieManagerCompat вместе с API getCookieInfo , который извлекает все атрибуты для всех файлов cookie, установленных на определенном URL. Это отличается от существующего API getCookie в CookieManager , который возвращает только атрибуты имени и значения файлов cookie. ( I07365 , b/242161756 )

Версия 1.6.0-альфа01

24 августа 2022 г.

Выпущен androidx.webkit:webkit:1.6.0-alpha01 . Версия 1.6.0-alpha01 содержит эти коммиты.

Новые возможности

  • Добавлены API в WebSettingsCompat для включения/отключения эффекта EnterpriseAuthenticationAppLinkPolicy , если он установлен администратором в WebView . Эта функция позволяет WebView открывать приложение аутентификации вместо открытия URL аутентификации. Эта функция не влияет на устройства, которые не управляются корпоративной политикой.

Версия 1.5.0

Версия 1.5.0

24 августа 2022 г.

Выпущен androidx.webkit:webkit:1.5.0 . Версия 1.5.0 содержит эти коммиты.

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

  • Новый API setAlgorithmicDarkeningAllowed в WebSettingsCompat заменяет старые API setForceDark и setForceDarkStrategy . Приложения, ориентированные на SDK 33 и выше (T), должны использовать новый API, так как старый API больше не будет иметь никакого эффекта для этих приложений.
  • Список разрешенных URL-адресов для использования настроенного прокси теперь можно задать через ProxyCofig.Builder , установив setReverseBypassEnabled в true . Когда это вступит в силу, все остальные URL-адреса будут обходить настроенный прокси-сервер.

Версия 1.5.0-rc01

10 августа 2022 г.

androidx.webkit:webkit:1.5.0-rc01 выпущен без изменений с 1.5.0-beta01 . Версия 1.5.0-rc01 содержит эти коммиты.

Версия 1.5.0-beta01

29 июня 2022 г.

Выпущен androidx.webkit:webkit:1.5.0-beta01 . Версия 1.5.0-beta01 содержит эти коммиты.

Изменения API

  • API, связанные с алгоритмическим затемнением, теперь аннотируются как требующие API уровня Q. API не будет иметь никакого влияния на уровни API < Q, поскольку темная тема не является опцией на этих устройствах. ( I0905e )

Версия 1.5.0-альфа01

18 мая 2022 г.

Выпущен androidx.webkit:webkit:1.5.0-alpha01 . Версия 1.5.0-alpha01 содержит эти коммиты.

Новые возможности

  • Добавьте новый метод getVariationsHeader() в WebViewCompat для получения значения заголовка X-Client-Data, отправленного WebView . Возвращаемое значение будет представлять собой закодированный base64 Protobuf ClientVariations .
  • Добавить API в WebSettingsCompat для разрешения/запрета алгоритмического затемнения для приложений с targetSdk >= 33. ( I29597 )

Изменения API

  • Добавить новый метод в ProxyCofig.Builder для установки обратного обхода. Установка обратного обхода в значение true означает, что только URL-адреса в списке обхода будут использовать настройки прокси. ( I9eaa2 , b/168728599 )

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

  • Исправлена ​​опечатка в документации темной темы. ( I36ebf , b/194343633 )
  • Исправлена ​​ошибка, из-за которой методы WebViewAssetLoader.Builder непреднамеренно зависели от порядка. ( If420d , b/182196765 )

Версия 1.4.0

Версия 1.4.0

16 декабря 2020 г.

Выпущен androidx.webkit:webkit:1.4.0 . Версия 1.4.0 содержит эти коммиты.

Основные изменения по сравнению с версией 1.3.0

  • Добавлен новый API setSafeBrowsingAllowlist() для замены setSafeBrowsingWhitelist() . Это помогает приложениям обновлять свой код, чтобы избежать неисчерпывающей терминологии, при этом поддерживая тот же диапазон Android SDK и версий WebView, что и устаревший API.
  • Исправлена ​​ошибка в setProxyOverride, из-за которой резервные правила применялись некорректно.

Версия 1.4.0-rc02

2 декабря 2020 г.

Выпущен androidx.webkit:webkit:1.4.0-rc02 . Версия 1.4.0-rc02 содержит эти коммиты.

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

  • Исправлена ​​ошибка, из-за которой резервные правила применялись некорректно при использовании setProxyOverride.

Версия 1.4.0-rc01

11 ноября 2020 г.

androidx.webkit:webkit:1.4.0-rc01 выпущен без изменений с 1.4.0-beta01 . Версия 1.4.0-rc01 содержит эти коммиты.

Версия 1.4.0-beta01

14 октября 2020 г.

androidx.webkit:webkit:1.4.0-beta01 выпущен без изменений с 1.4.0-alpha01 . Версия 1.4.0-beta01 содержит эти коммиты.

Версия 1.4.0-альфа01

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

Выпущен androidx.webkit:webkit:1.4.0-alpha01 . Версия 1.4.0-alpha01 содержит эти коммиты.

Изменения API

  • Добавлен новый API WebViewCompat#setSafeBrowsingAllowlist() для замены setSafeBrowsingWhitelist() . Это помогает приложениям обновлять свой код, чтобы избежать неисчерпывающей терминологии, при этом поддерживая тот же диапазон Android SDK и версий WebView, что и устаревший API. ( I8d65d )

Версия 1.3.0

Версия 1.3.0

19 августа 2020 г.

Выпущен androidx.webkit:webkit:1.3.0 . Версия 1.3.0 содержит эти коммиты.

Основные изменения с 1.2.0

  • API API APISERKSTRATEGY обеспечивает большее управление темном WebView (CSS/веб -контент потемнение в сравнении с автоматическим темном).
  • WebmessageListener и связанные с ним API предоставляют простой и надежный механизм для установления связи между веб -содержанием и приложением Embedder WebView.
  • isMultiProcessEnabled API, чтобы проверить, работает ли WebView в Multi Process. Это возможно, начиная с Android O, и это означает, что веб -контент отображается в процессе рендеринга из песочницы, отдельно от процесса подачи заявки. Этот визуализатор с песочницей может быть передан с другими веб -просветителями в том же приложении, но он не совместно используется с другими процессами приложений.

Версия 1.3.0-RC02

5 августа 2020 года

androidx.webkit:webkit:1.3.0-rc02 выпускается. Версия 1.3.0-RC02 содержит эти коммиты.

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

  • Это решает проблему совместимости, когда WebMessageListener иногда падает во время локальной разработки, если бы ваше приложение было запущено в Android Studio Instant Run.

Версия 1.3.0-RC01

24 июня 2020 года

androidx.webkit:webkit:1.3.0-rc01 выпускается без изменений с 1.3.0-beta01 . Версия 1.3.0-RC01 содержит эти коммиты.

Версия 1.3.0-бета01

10 июня 2020 года

androidx.webkit:webkit:1.3.0-beta01 выпускается. Версия 1.3.0-бета01 содержит эти коммиты.

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

  • API API ForceDarkStrategy для управления темном WebView (CSS/Веб -контент темнеет по сравнению с автоматическим темном).
  • API WebMessageListener предоставляют простой и безопасный механизм для установления связи между веб -содержимым и приложением Embedder WebView.
  • MultiProcessEnabled API, чтобы проверить, работает ли WebView в режиме Multi Process.

Версия 1.3.0-Alpha03

27 мая 2020 года

androidx.webkit:webkit:1.3.0-alpha03 выпускается. Версия 1.3.0-Alpha03 содержит эти коммиты.

API меняется

  • Метод addWebMessageListener теперь получает Set<String> разрешенных правил происхождения (ранее List<String> ).

Версия 1.3.0-Alpha02

29 апреля 2020 года

androidx.webkit:webkit:1.3.0-alpha02 выпускается. Версия 1.3.0-Alpha02 содержит эти коммиты.

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

  • MultiprocessEnabled API, чтобы проверить, работает ли WebView в режиме Multi Process.

API меняется

  • Все константы темной стратегии теперь префикс с помощью DARK_STRATEGY .

Версия 1.3.0-Alpha01

15 апреля 2020 года

androidx.webkit:webkit:1.3.0-alpha01 выпускается. Версия 1.3.0-Alpha01 содержит эти коммиты.

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

  • API API ForceDarkStrategy для управления темном WebView (CSS/Веб -контент темнеет по сравнению с автоматическим темном).
  • API WebMessageListener предоставляют простой и безопасный механизм для установления связи между веб -содержимым и приложением Embedder WebView.

Версия 1.2.0

Версия 1.2.0

4 марта 2020 года

androidx.webkit:webkit:1.2.0 выпускается. Версия 1.2.0 содержит эти коммиты.

Основные изменения с 1.1.0

  • Добавлен API ARCECERARK для управления, если просмотр веб -просмотра следует отображать в темном режиме.

Версия 1.2.0-RC01

19 февраля 2020 года

androidx.webkit:webkit:1.2.0-rc01 выпускается без изменений с 1.2.0-beta01 . Версия 1.2.0-RC01 содержит эти коммиты.

Версия 1.2.0-бета01

5 февраля 2020 года

androidx.webkit:webkit:1.2.0-beta01 выпускается без изменений с 1.2.0-alpha01 . Версия 1.2.0-бета01 содержит эти коммиты .

Версия 1.2.0-Alpha01

18 декабря 2019 г.

androidx.webkit:webkit:1.2.0-alpha01 выпускается. Версия 1.2.0-Alpha01 содержит эти коммиты .

Новые возможности

  • API API для управления для управления, если веб -просмотр следует отображать в темном режиме.

Версия 1.1.0

Версия 1.1.0

7 ноября 2019 года

androidx.webkit:webkit:1.1.0 выпускается. Версия 1.1.0 содержит эти коммиты .

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

  • Getter API, чтобы дополнить SetWebViewClient () и SetWebChromeClient () .
  • ProxyController API для установки прокси -сервера сетевого запроса для просмотра веб -просмотра приложения.
  • WebViewassetLoader API для упрощения загрузки активов, ресурсов и файлов APK из каталога данных приложения через перехват запроса. Это позволяет доступ к веб -и локальным ресурсам без отключения CORS.
  • TracingController API для сбора информации о трассировке веб -просмотра для отладки.
  • API -интерфейсы renderprocess для управления услугами рендеринга WebView и обнаружения, когда плохо себя ведет себя контент, заставляет рендеристов WebView рендеристы становятся без реагирования.
  • Обновлены существующие API, чтобы включить аннотации Nullability ( @NonNull , @Nullable ) и поток ( @UiThread , @WorkerThread ).

Версия 1.1.0-RC01

9 октября 2019 года

androidx.webkit:webkit:1.1.0-rc01 выпускается. Версия 1.1.0-RC01 содержит эти коммиты .

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

  • Исправлена ​​проблема, в которой setWebViewRenderProcessClient() может потерпеть неудачу, если бы пропустил нулевый клиент.

Версия 1.1.0-бета01

5 сентября 2019 года

androidx.webkit:webkit:1.1.0-beta01 выпускается. Коммуты, включенные в эту версию, можно найти здесь .

Новые возможности

  • Новый InternalStoragePathHandler в WebViewAssetLoader для загрузки файлов из каталога данных приложения.

API меняется

  • ProxyConfig#getProxyRules() теперь возвращает немодиажируемый список экземпляров ProxyRule , который является новым классом для хранения фильтра схемы и соответствующего прокси -URL.

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

  • WebViewAssetLoader по умолчанию на тип «текстового/простого» (а не нулевой), когда он не может догадаться типом MIME из пути файла.
  • WebViewAssetLoader больше не бросает NullPointerException при загрузке файлов со специальными символами в именах их путей.

Версия 1.1.0-Alpha02

7 августа 2019 года

androidx.webkit:webkit:1.1.0-alpha02 выпускается. Коммуты, включенные в эту версию, можно найти здесь .

Новые возможности

  • WebViewAssetLoader раскрывает интерфейс PathHandler , чтобы позволить приложениям создавать пользовательские функции обработки пути.

API меняется

  • WebViewAssetLoader теперь является окончательным классом, так как он не предназначен для подклассов.
  • WebViewAssetLoader#PathHandler теперь являются общедоступными и окончательными.
  • Незначительные изменения в именах методов ProxyConfig.
  • ProxyController : добавлены новые методы addDirect() и addDirect(String) чтобы подключиться непосредственно к серверам; удаленная прямая строка.
  • Обновлены существующие API, чтобы включить аннотации Nullability ( @NonNull , @Nullable ) и поток ( @UiThread , @WorkerThread ).

Версия 1.1.0-Alpha01

7 мая 2019 года

androidx.webkit:webkit:1.1.0-alpha01 выпускается. Коммуты, включенные в эту версию, можно найти здесь .

Новые возможности

  • API Getter для дополнения setWebViewClient() и setWebChromeClient()
  • ProxyController API для установки прокси -сервера сетевого запроса для просмотра веб -просмотра приложения.
  • API AssetLoader для упрощения загрузки активов и ресурсов APK посредством перехвата запросов, позволяя доступ к веб -ресурсам без отключения CORS.
  • TracingController API для сбора информации о трассировке веб -просмотра для отладки.
  • API -интерфейсы renderprocess для управления услугами рендеринга WebView и обнаружения, когда плохо себя ведет себя контент, заставляет рендеристов WebView рендеристы становятся без реагирования.

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

  • Незначительные исправления форматирования документации для существующих API.