Вебкит
Последнее обновление | Стабильный релиз | Кандидат на релиз | Бета-версия | Альфа-релиз |
---|---|---|---|---|
27 августа 2025 г. | 1.14.0 | - | - | 1.15.0-альфа02 |
Объявление зависимостей
Чтобы добавить зависимость от Webkit, необходимо добавить репозиторий Google Maven в свой проект. Подробнее см. в репозитории Google Maven .
Добавьте зависимости для необходимых артефактов в файл build.gradle
вашего приложения или модуля:
классный
dependencies { implementation "androidx.webkit:webkit:1.14.0" }
Котлин
dependencies { implementation("androidx.webkit:webkit:1.14.0") }
Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .
Обратная связь
Ваши отзывы помогают улучшить Jetpack. Сообщите нам, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с уже существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете проголосовать за существующую проблему, нажав на кнопку со звёздочкой.
Более подробную информацию см. в документации по системе отслеживания проблем .
Версия 1.15
Версия 1.15.0-альфа02
27 августа 2025 г.
Выпущен androidx.webkit:webkit:1.15.0-alpha02
. Версия 1.15.0-alpha02 содержит следующие коммиты .
Новые функции
- Добавляет
Profile#preconnect
, который позволяет приложениям открывать соединение с источником перед переходом к нему для ускорения будущих загрузок. ( I8db41 ) - В
WebViewCompat
добавлен новый APIprerenderUrlAsync
, позволяющий приложениям предварительно визуализировать URL-адреса перед их отображением в WebView.
Пререндеринг может значительно повысить скорость загрузки, загружая страницу заранее. Когда пользователь переходит по URL-адресу, предварительно отрендеренная страница отображается мгновенно.
Эти API ранее были выпущены как экспериментальные и теперь могут использоваться без аннотации@OptIn
. ( Ie14f5 ) - Теперь вы можете указать набор профилей для синхронной загрузки при вызове API
startUpWebView
. Это настраивается путём передачи имён профилей новому методу вWebViewStartUpConfig.Builder
( I9a6e6 ). - Добавить новый API в
WebSettingsCompat
для включения/отключения BackForwardCache в объектеWebSettings
. Ранее этот API был выпущен как экспериментальный и теперь может использоваться без аннотации@OptIn
. ( Ie413b ) - Добавлена поддержка переопределения форм-факторов User-Agent. Класс
UserAgentMetadata
содержит новые методы для получения и установки форм-факторов метаданных User-Agent.UserAgentMetadata.Builder
добавлен новый методsetFormFactors()
для переопределения клиентской подсказки User-AgentSec-CH-UA-Form-Factors
. Текущие значения переопределения можно получить с помощью нового методаgetFormFactors()
. ( I6d08c , b/430554841 )
Изменения API
- Добавить API в
ProcessGlobalConfig
для настройки инициализации потока пользовательского интерфейсаWebView
( I5e85a , b/433273850 , b/397372092 ) - Добавить новое имя функции для API
WebViewStartupConfig.Builder#setProfilesToLoadDuringStartup
( I36451 ) - Перемещение minSdk по умолчанию из 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-альфа01
2 июля 2025 г.
Выпущен androidx.webkit:webkit:1.15.0-alpha01
. Версия 1.15.0-alpha01 содержит следующие коммиты .
Новые функции
- Новый API для установки пар «имя-значение» HTTP-заголовка в запросах к определенным источникам.
МетодProfile.setOriginMatchedHeader
позволяет приложению указать, что имя и значение заголовка должны быть установлены для всех HTTP/HTTPS-запросов к источникам, соответствующим предоставленному списку разрешенных запросов, отправляемых из WebView и сервис-воркеров, использующих заданный профиль. API допускает только одно сопоставление для каждого имени заголовка и выдаст исключение, если имя заголовка уже задано.
ИспользуйтеProfile.clearOriginMatchedHeader
для удаления существующего сопоставления иProfile.clearAllOriginMatchedHeaders
для удаления всех сопоставлений. ( Ida7f1 , b/419469873 ) - Новый API для доступа к файлам cookie и их установки как части обратных вызовов
shouldInterceptRequest
для WebView и Service Workers.
Разработчики приложений, которые в настоящее время обращаются к APICookieManager
в рамках своегоshouldInterceptRequest
, теперь могут включать заголовки cookie напрямую, вызываяsetIncludeCookiesOnShouldInterceptRequest
. Это заставит WebView добавить заголовокCookie
в карту WebResourceRequest.getRequestHeaders() , который будет содержать именно те cookie, которые применяются к запросу. Это также позволит корректно обрабатывать любые секционированные cookie.
Приложения могут предоставлять значения заголовкаSet-Cookie
через новый APIWebResourceResponseCompat.setCookies
. Добавленные значенияSet-Cookie
будут обрабатываться WebView в процессе обработки ответа. ( Idbfd1 , b/414769380 ) - Новый экспериментальный API для ускорения процесса рендеринга
Profile
.
Этот API может использоваться приложениями со сложными жизненными циклами WebView, чтобы гарантировать запуск процесса рендеринга, даже если все экземпляры WebView были уничтожены. ( Ia8fc8 )
Изменения API
- Добавить новый метод в экспериментальный интерфейс навигации для предоставления URL-адреса навигации. ( I1c6c0 )
- Обновите название функции Profile Prefetch, чтобы уточнить, что API Prefetch теперь можно вызывать в фоновом потоке. ( 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-альфа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
в APISpeculativeLoadingConfig
( 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 в профиле: добавлен новый API в
Profile
, позволяющий разработчикам запускать предварительную выборку 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
так, чтобы он использовал только параметрmimeType
для предложения расширения для имен файлов, полученных из параметра URL. ( 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 )
Исправления ошибок
- Эта библиотека теперь использует аннотации JSpecify, определяющие значение null , которые являются типовыми. Разработчикам 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 в профиле: добавлен новый 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
- Добавьте новый API в
WebSettingsCompat
для включения/отключения BackForwardCache для этогоWebSettings
. Этот API экспериментальный и может быть изменён в будущем. ( aosp/3111705 ) - Добавлен новый API в
WebSettingsCompat
для управления поведением спекулятивной загрузки для этого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
для управления поведением спекулятивной загрузки для этого WebSettings. На данный момент доступен только предварительный рендеринг . Этот 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 WebViewCompat#addDocumentStartJavascript позволяет приложениям внедрять скрипты в
- Добавлены API для изменения способа регистрации событий Privacy Sandbox Attribution Reporting.
- Мы представили новый API WebSettingsCompat#setAttributionRegistrationBehavior , который позволяет разработчикам настраивать регистрацию источников атрибуции и триггеров как исходящих из самого приложения или как исходящих из веб-контента в WebView. Этот метод также можно использовать для отключения отчётности об атрибуции в WebView. Кроме того, мы добавили новый API
WebSettingsCompat#getAttributionRegistrationBehavior
для получения текущего поведения. - Более подробную информацию см. в документации Privacy Sandbox .
- Мы представили новый API WebSettingsCompat#setAttributionRegistrationBehavior , который позволяет разработчикам настраивать регистрацию источников атрибуции и триггеров как исходящих из самого приложения или как исходящих из веб-контента в WebView. Этот метод также можно использовать для отключения отчётности об атрибуции в WebView. Кроме того, мы добавили новый API
- Добавлены 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
для использования шаблона конструктора, обеспечивая согласованность геттеров и сеттеров классаUserAgentMetadata
с допустимостью значений NULL. ( 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
. Кроме того, мы добавили новый APIWebSettingsCompat#getAttributionRegistrationBehavior
для получения текущего поведения. Подробнее см. в документации Privacy Sandbox . ( I661f2 ) - Добавлены API для переопределения метаданных пользовательского агента. Мы представили новый API
WebSettingsCompat#setUserAgentMetadata
для переопределения метаданных пользовательского агента для WebView, которые используются для заполнения клиентских подсказок пользовательского агента, а также добавили ещё один новый APIWebSettingsCompat#getUserAgentMetadata
для получения текущих переопределений пользовательского агента. Мы рекомендуем приложениям использовать новый API для установки правильных значений переопределения, а не полагаться на изменение пользовательского агента. ( 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
- Добавить поддержку передачи
ArrayBuffer
черезWebMessagePortCompat#postMessage
,JavaScriptReplyProxy#postMessage
иWebViewCompat#postWebMessage
, полученияArrayBuffer
из JavaScript черезWebMessagePortCompat
иWebMessageListener
, а также получения передаваемогоArrayBuffer
из JavaScript черезWebMessagePortCompat
. ( aosp/2596550 , b/251152171 )
Версия 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
вместе с APIgetCookieInfo
, который извлекает все атрибуты всех файлов cookie, установленных на определённом URL. Это отличается от существующего APIgetCookie
в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
заменяет старые APIsetForceDark
и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-интерфейсы, связанные с Alogrithimic Darkening, теперь помечены так, что требуют уровня 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
. Возвращаемое значение будет представлять собой protobuf ClientVariations в кодировке Base64. - Добавьте API в
WebSettingsCompat
, чтобы разрешить/запретить алгоритмическое затемнение для приложения с targetSdk >= 33. ( I29597 )
Изменения API
- Добавьте новый метод в
ProxyCofig.Builder
для установки обратного обхода. Установка обратного обхода в значение true означает, что только URL-адреса в списке обхода будут использовать настройки прокси. ( I9eaa2 , б/168728599 )
Исправления ошибок
- Исправлена опечатка в документации по темной теме. ( I36ebf , р/194343633 )
- Исправлена ошибка, из-за которой методы
WebViewAssetLoader.Builder
непреднамеренно зависели от порядка. ( If420d , б/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-бета01
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 ForceDarkStrategy обеспечивает больший контроль над затемнением WebView (затемнение CSS/веб-контента вместо автоматического затемнения).
- WebMessageListener и связанные с ним API предоставляют простой и безопасный механизм установления связи между веб-содержимым и приложением для внедрения WebView.
-
isMultiProcessEnabled
API, чтобы проверить, работает ли WebView в нескольких процессах. Это возможно, начиная с Android O, и это означает, что веб-контент отображается в изолированном процессе рендеринга, отдельно от процесса приложения. Этот изолированный модуль визуализации может использоваться совместно с другими WebView в том же приложении, но не используется совместно с другими процессами приложения.
Версия 1.3.0-rc02
5 августа 2020 г.
androidx.webkit:webkit:1.3.0-rc02
выпущен. Версия 1.3.0-rc02 содержит эти коммиты.
Исправления ошибок
- Это устраняет проблему совместимости, из-за которой
WebMessageListener
иногда приводил к сбою во время локальной разработки, если ваше приложение запускалось с мгновенным запуском Android Studio.
Версия 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-beta01 содержит эти коммиты.
Новые функции
- API
ForceDarkStrategy
для управления затемнением WebView (затемнение CSS/веб-контента вместо автоматического затемнения). - API-интерфейсы
WebMessageListener
предоставляют простой и безопасный механизм для установления связи между веб-содержимым и приложением для внедрения WebView. - API
MultiProcessEnabled
для проверки, работает ли WebView в многопроцессном режиме.
Версия 1.3.0-альфа03
27 мая 2020 г.
Выпущен androidx.webkit:webkit:1.3.0-alpha03
. Версия 1.3.0-alpha03 содержит эти коммиты.
Изменения API
- Метод
addWebMessageListener
теперь получаетSet<String>
разрешенных правил происхождения (ранееList<String>
).
Версия 1.3.0-альфа02
29 апреля 2020 г.
Выпущен androidx.webkit:webkit:1.3.0-alpha02
. Версия 1.3.0-alpha02 содержит эти коммиты.
Новые функции
- API MultiProcessEnabled для проверки, работает ли WebView в многопроцессном режиме.
Изменения API
- Все константы темной стратегии теперь имеют префикс
DARK_STRATEGY
.
Версия 1.3.0-альфа01
15 апреля 2020 г.
Выпущен androidx.webkit:webkit:1.3.0-alpha01
. Версия 1.3.0-alpha01 содержит эти коммиты.
Новые функции
- API
ForceDarkStrategy
для управления затемнениемWebView
(затемнение CSS/веб-контента вместо автоматического затемнения). - API-интерфейсы
WebMessageListener
предоставляют простой и безопасный механизм для установления связи между веб-содержимым и приложением для внедрения WebView.
Версия 1.2.0
Версия 1.2.0
4 марта 2020 г.
androidx.webkit:webkit:1.2.0
выпущен. Версия 1.2.0 содержит эти коммиты.
Основные изменения с версии 1.1.0
- Добавлен API ForceDark для управления отображением WebView в темном режиме.
Версия 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-beta01 содержит эти коммиты .
Версия 1.2.0-альфа01
18 декабря 2019 г.
Выпущен androidx.webkit:webkit:1.2.0-alpha01
. Версия 1.2.0-alpha01 содержит эти коммиты .
Новые функции
- ForceDark API для управления отображением WebView в темном режиме.
Версия 1.1.0
Версия 1.1.0
7 ноября 2019 г.
androidx.webkit:webkit:1.1.0
выпущен. Версия 1.1.0 содержит эти коммиты .
Важные изменения с версии 1.0.0
- API-интерфейсы Getter для дополнения setWebViewClient() и setWebChromeClient() .
- API ProxyController для установки прокси-сервера сетевых запросов для WebViews приложения.
- API WebViewAssetLoader для упрощения загрузки ресурсов, ресурсов и файлов APK из каталога данных приложения посредством перехвата запросов. Это позволяет получить доступ к веб-и локальным ресурсам без отключения CORS.
- API TracingController для сбора информации трассировки WebView в целях отладки.
- API-интерфейсы RenderProcess для управления службами отрисовки WebView и обнаружения случаев, когда из-за плохого поведения содержимого средства отрисовки WebView перестают отвечать на запросы.
- Обновлены существующие API, чтобы включить аннотации обнуляемости (
@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 «текст/простой» (а не нулевой), если не может угадать тип MIME по пути к файлу. -
WebViewAssetLoader
больше не генерирует исключениеNullPointerException
при загрузке файлов со специальными символами в именах путей.
Версия 1.1.0-альфа02
7 августа 2019 г.
Выпущен androidx.webkit:webkit:1.1.0-alpha02
. Коммиты, включенные в эту версию, можно найти здесь .
Новые функции
-
WebViewAssetLoader
предоставляет интерфейсPathHandler
, позволяющий приложениям создавать собственные функции обработки путей.
Изменения API
-
WebViewAssetLoader
теперь является последним классом, поскольку он не предназначен для создания подкласса. - Реализации
WebViewAssetLoader#PathHandler
теперь общедоступны и окончательны. - Незначительные изменения в именах методов ProxyConfig.
-
ProxyController
: добавлены новые методыaddDirect()
иaddDirect(String)
для прямого подключения к серверам; удалена ПРЯМАЯ строка. - Обновлены существующие API, чтобы включить аннотации обнуляемости (
@NonNull
,@Nullable
) и потоков (@UiThread
,@WorkerThread
).
Версия 1.1.0-альфа01
7 мая 2019 г.
Выпущен androidx.webkit:webkit:1.1.0-alpha01
. Коммиты, включенные в эту версию, можно найти здесь .
Новые функции
- API-интерфейсы Getter для дополнения
setWebViewClient()
иsetWebChromeClient()
- API ProxyController для установки прокси-сервера сетевых запросов для WebViews приложения.
- API AssetLoader для упрощения загрузки ресурсов и ресурсов APK посредством перехвата запросов, обеспечивая доступ к веб-ресурсам без отключения CORS.
- API TracingController для сбора информации трассировки WebView в целях отладки.
- API-интерфейсы RenderProcess для управления службами отрисовки WebView и обнаружения случаев, когда из-за плохого поведения содержимого средства отрисовки WebView перестают отвечать на запросы.
Исправления ошибок
- Незначительные исправления форматирования документации для существующих API.