WebKit
Actualización más reciente | Versión estable | Versión potencial | Versión beta | Versión alfa |
---|---|---|---|---|
11 de diciembre de 2024 | 1.9.0 | - | - | 1.13.0-alpha02 |
Cómo declarar dependencias
Para agregar una dependencia en WebKit, debes agregar el repositorio de Maven de Google a tu proyecto. Consulta el repositorio de Maven de Google para obtener más información.
Agrega las dependencias de los artefactos que necesites en el archivo build.gradle
de tu app o módulo:
Groovy
dependencies { implementation "androidx.webkit:webkit:1.9.0" }
Kotlin
dependencies { implementation("androidx.webkit:webkit:1.9.0") }
Para obtener más información sobre las dependencias, consulta Cómo agregar dependencias de compilación.
Comentarios
Tus comentarios ayudan a mejorar Jetpack. Avísanos si descubres nuevos errores o tienes ideas para mejorar esta biblioteca. Consulta los errores existentes de esta biblioteca antes de crear uno nuevo. Puedes agregar tu voto a un error existente haciendo clic en el botón de la estrella.
Consulta la documentación sobre la Herramienta de seguimiento de errores para obtener más información.
Versión 1.13
Versión 1.13.0-alpha02
11 de diciembre de 2024
Lanzamiento de androidx.webkit:webkit:1.13.0-alpha02
. La versión 1.13.0-alpha02 contiene estas confirmaciones.
Nuevas funciones
- Se agregó la API de etiquetado de sockets a
WebView
para contabilizar el tráfico de red deWebView
conNetworkStatsManager
/TrafficStats
. Esta función solo estará disponible a partir deWebView
M133. (Ica441, b/374932688)
Cambios en la API
- Para actualizar la API de Prefetch, cambia el nombre de
PrefetchParameter
aSpeculativeLoadingParamaters
, introduce un nuevoPrefetchNetworkException
, reemplazaPrefetchOperationCallback
porOutcomeReceiverCompat
y actualiza el Javadoc. (If5072). - Obtén información de diagnóstico de la API de inicio asíncrono de WebView.
- Proporciona una opción para que las apps solo activen la inicialización que no bloquee el subproceso de IU. (I9bf2b).
Correcciones de errores
- Esta biblioteca ahora usa anotaciones de nulidad de JSpecify, que son de tipo de uso. Los desarrolladores de Kotlin deben usar los siguientes argumentos del compilador para aplicar el uso correcto:
-Xjspecify-annotations=strict, -Xtype-enhancement-improvements-strict-mode
(I0e4c5, b/326456246).
Versión 1.13.0-alpha01
13 de noviembre de 2024
Lanzamiento de androidx.webkit:webkit:1.13.0-alpha01
. La versión 1.13.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- Se agregó la API experimental de inicio asíncrono de
WebView
. (I94b8a). - Precarga de URL en el perfil: Se introdujo una nueva API en el perfil para permitir que los desarrolladores activen la precarga de URL. Limpieza de la precarga: Se agregó una API para borrar las precargas en curso. (I42c5c).
Cambios en la API
WebView.startSafeBrowsing
dejó de estar disponible. (If5626).
Versión 1.12
Versión 1.12.1
2 de octubre de 2024
Lanzamiento de androidx.webkit:webkit:1.12.1
. La versión 1.12.1 contiene estas confirmaciones.
Correcciones de errores
- Se resolvió el problema que impedía que las APIs de 1.12.0 estuvieran disponibles en la versión.
Versión 1.12.0
18 de septiembre de 2024
Lanzamiento de androidx.webkit:webkit:1.12.0
. La versión 1.12.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.11.0
- Agrega una API nueva a
WebSettingsCompat
para habilitar o inhabilitar BackForwardCache para esteWebSettings
. Esta API es experimental y puede cambiar en el futuro. (aosp/3111705) - Se agregó una API nueva a
WebSettingsCompat
para controlar el comportamiento de carga especulativa de esteWebSettings
. Por el momento, solo está disponible Prerender. Esta API es experimental y puede cambiar en el futuro. (I13962). - Se agregó una nueva API para habilitar la autenticación web en
WebView
. Los desarrolladores pueden habilitar o inhabilitar las llamadasWebAuthn
en unWebView
para sus apps conWebSettingsCompat#setWebAuthenticationSupport
. (I8187f).
Versión 1.12.0-rc01
4 de septiembre de 2024
Lanzamiento de androidx.webkit:webkit:1.12.0-rc01
. Esta versión no contiene cambios desde la versión 1.12.0-beta01
.
Versión 1.12.0-beta01
21 de agosto de 2024
Lanzamiento de androidx.webkit:webkit:1.12.0-beta01
. La versión 1.12.0-beta01 contiene estas confirmaciones.
Correcciones de errores
- Se quitó el esquema manual de acceso a las nuevas APIs de la plataforma, ya que esto se realiza automáticamente a través del modelado de API cuando se usa R8 con AGP 7.3 o versiones posteriores (p.ej., R8 versión 3.3) y para todas las compilaciones cuando se usa AGP 8.1 o versiones posteriores (p.ej., D8 versión 8.1). Se recomienda a los clientes que no usen AGP que actualicen a la versión 8.1 de D8 o una posterior. Consulta este artículo para obtener más detalles. (Ia60e0, b/345472586).
Versión 1.12.0-alpha02
12 de junio de 2024
Lanzamiento de androidx.webkit:webkit:1.12.0-alpha02
. La versión 1.12.0-alpha02 contiene estas confirmaciones.
Nuevas funciones
- Agrega una API nueva a
WebSettingsCompat
para habilitar o inhabilitarBackForwardCache
. Esta API es experimental y puede cambiar en el futuro. (I64a38). - Se agregó una API nueva a
WebSettingsCompat
para controlar el comportamiento de carga especulativa de este WebSettings. Por el momento, solo está disponible Prerender. Esta API es experimental y puede cambiar en el futuro. (I13962).
Cambios en la API
- Algunos métodos ahora se documentan con
@UiThread
cuando corresponde. (I6c7e0), (I44541) - Los métodos seguros para subprocesos ahora se documentan con
@AnyThread
. (I70189) - Se aumentó
minSdkVersion
de 19 a 21. (Id7a43).
Versión 1.12.0-alpha01
17 de abril de 2024
Lanzamiento de androidx.webkit:webkit:1.12.0-alpha01
. La versión 1.12.0-alpha01 contiene estas confirmaciones.
Cambios en la API
- Se agregó una nueva API para habilitar la autenticación web en
WebView. Developers
. Puede habilitar o inhabilitar las llamadas aWebAuthn
en unWebView
para sus apps conWebSettingsCompat#setWebAuthenticationSupport
. (I8187f).
Versión 1.11
Versión 1.11.0
1 de mayo de 2024
Lanzamiento de androidx.webkit:webkit:1.11.0
. La versión 1.11.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.10.0
- Permite que las apps controlen la reproducción de audio en
WebView
a través de las nuevas APIs desetAudioMuted
yisAudioMuted
, que son similares a silenciar una pestaña en Chrome. - Se introdujo
URLUtilCompat
, que admite el análisis de encabezadosContent-Disposition
que usan el atributo de valor codificadofilename*
, como se define en RFC 6266. La API de compatibilidad también expone directamente un método para analizar el encabezadoContent-Disposition
cuando no se desea un nombre de archivo sugerido basado en la URL y el tipo de MIME.
Versión 1.11.0-rc01
3 de abril de 2024
Lanzamiento de androidx.webkit:webkit:1.11.0-rc01
. Esta versión no contiene cambios desde la versión 1.11.0-beta01
.
Versión 1.11.0-beta01
20 de marzo de 2024
Lanzamiento de androidx.webkit:webkit:1.11.0-beta01
sin cambios notables. La versión 1.11.0-beta01 contiene estas confirmaciones.
Versión 1.11.0-alpha02
21 de febrero de 2024
Lanzamiento de androidx.webkit:webkit:1.11.0-alpha02
. La versión 1.11.0-alpha02 contiene estas confirmaciones.
Nuevas funciones
- Se agregaron los métodos
setAudioMuted
yisAudioMuted
para silenciar (y activar)WebViews
. Este método te permitirá evitar que unWebView
reproduzca audio. (Ie7a33).
Cambios en la API
URLUtilCompat
se hace final, ya que no debe subclasificarse. (I49ec1).
Versión 1.11.0-alpha01
7 de febrero de 2024
Lanzamiento de androidx.webkit:webkit:1.11.0-alpha01
. La versión 1.11.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- Se agregó compatibilidad para
URLUtil.guessFileName
. La versión de compatibilidad enURLUtilCompat
admite el análisis de encabezadosContent-Disposition
que usan el atributo de valor codificadofilename*
como se define en la RFC 6266. La API de compatibilidad también expone directamente un método para analizar el encabezadoContent-Disposition
cuando no se desea un nombre de archivo sugerido basado en la URL y el tipo de MIME. (If6ae7, b/309927164).
Versión 1.10
Versión 1.10.0
24 de enero de 2024
Lanzamiento de androidx.webkit:webkit:1.10.0
. La versión 1.10.0 contiene estas confirmaciones.
Cambios importantes desde 1.9.0
- Se agregó una nueva API a WebSettingsCompat para controlar el comportamiento experimental de la API de Android WebView Media Integrity inhabilitando la API por completo o restringiendo el uso compartido de la identidad de la aplicación en la respuesta de la API. Se puede activar o desactivar para todos los orígenes y por origen.
Versión 1.10.0-rc01
10 de enero de 2024
Lanzamiento de androidx.webkit:webkit:1.10.0-rc01
. Esta versión no contiene cambios desde la versión 1.10.0-beta01
.
Versión 1.10.0-beta01
13 de diciembre de 2023
Lanzamiento de androidx.webkit:webkit:1.10.0-beta01
. La versión 1.10.0-beta01 contiene estas confirmaciones.
- No hay cambios funcionales desde
1.10.0-alpha01
.
Versión 1.10.0-alpha01
29 de noviembre de 2023
Lanzamiento de androidx.webkit:webkit:1.10.0-alpha01
. La versión 1.10.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- Se agregó una nueva API a
WebSettingsCompat
para controlar el comportamiento experimental de la API de Android WebView Media Integrity inhabilitando la API por completo o restringiendo el uso compartido de la identidad de la aplicación en la respuesta de la API. Se puede activar o desactivar para todos los orígenes y por origen.
Versión 1.9
Versión 1.9.0
29 de noviembre de 2023
Lanzamiento de androidx.webkit:webkit:1.9.0
. La versión 1.9.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.8.0
- Se agregó una nueva API de varios perfiles para WebViews.
- La interfaz Profile tiene diferentes APIs para obtener datos asociados con este perfil, como su nombre, GeoLocationPermissions, ServiceWorkerController, CookieManager y WebStorage. Estos objetos son específicos del perfil, y la información no se comparte entre diferentes perfiles de la aplicación.
- El perfil que usa una instancia de
WebView
se puede cambiar con el método WebViewCompat#setProfile y recuperar con WebViewCompat#getProfile. - El nuevo ProfileStore te permite administrar los perfiles disponibles en tu aplicación, incluido el perfil predeterminado.
- Las APIs de WebView existentes, como CookieManager#getInstance, seguirán funcionando en el perfil predeterminado.
- Se agregó una API para insertar y ejecutar JavaScript antes de la carga de la página.
- La API de WebViewCompat#addDocumentStartJavascript permite que las apps inserten secuencias de comandos en un
WebView
que se ejecutarán antes de que se ejecuten las secuencias de comandos de la página. La API permite que la app especifique una lista de destinos de orígenes para que se habilite la secuencia de comandos, lo que garantiza que solo se ejecute en las páginas previstas. A diferencia de WebView#evaluateJavascript, esta API permitirá la ejecución de secuencias de comandos en iframes incorporados cuando se carguen. Las apps pueden usar esta nueva API en combinación con WebViewCompat#addWebMessageListener para configurar una comunicación bidireccional con JavaScript en la página de forma confiable.
- La API de WebViewCompat#addDocumentStartJavascript permite que las apps inserten secuencias de comandos en un
- Se agregaron APIs para modificar la forma en que se registran los eventos de Attribution Reporting de Privacy Sandbox.
- Presentamos una nueva API WebSettingsCompat#setAttributionRegistrationBehavior, que permite a los desarrolladores configurar si las fuentes y los activadores de atribución se registran como provenientes de la app o del contenido web en WebView. Este método también se puede usar para inhabilitar Attribution Reporting en WebView. Además, agregamos una nueva API
WebSettingsCompat#getAttributionRegistrationBehavior
para obtener el comportamiento actual. - Para obtener más información, consulta la documentación de Privacy Sandbox.
- Presentamos una nueva API WebSettingsCompat#setAttributionRegistrationBehavior, que permite a los desarrolladores configurar si las fuentes y los activadores de atribución se registran como provenientes de la app o del contenido web en WebView. Este método también se puede usar para inhabilitar Attribution Reporting en WebView. Además, agregamos una nueva API
- Se agregaron APIs para anular los metadatos del usuario-agente para las sugerencias de clientes.
- Presentamos una nueva API, WebSettingsCompat#setUserAgentMetadata, para anular los metadatos del usuario-agente de WebView que se usan para propagar las sugerencias de cliente del usuario-agente. También agregamos otra API nueva, WebSettingsCompat#getUserAgentMetadata, para obtener las anulaciones de usuario-agente actuales. Recomendamos que las apps usen la nueva API para establecer los valores de anulación correctos cada vez que cambien la cadena de usuario-agente predeterminada con WebSettings.setUserAgentString para garantizar que se usen los valores correctos en todas las situaciones.
Versión 1.9.0-rc01
15 de noviembre de 2023
Lanzamiento de androidx.webkit:webkit:1.9.0-rc01
. Esta versión no contiene cambios desde la versión 1.9.0-beta01
.
Versión 1.9.0-beta01
1 de noviembre de 2023
Lanzamiento de androidx.webkit:webkit:1.9.0-beta01
. La versión 1.9.0-beta01 contiene estas confirmaciones.
Cambios en la API
- Se solucionó el problema de nulidad de la API de metadatos del usuario-agente. Actualizamos la clase
BrandVersion
para usar el patrón de compilador y hacer que la nulidad de los métodos get y set de la claseUserAgentMetadata
sea coherente. (Ibf195). - Anotación de
ProfileStore
,WebViewCompat#setProfile
yWebViewCompat.getProfile
con@UiThread
(I499b2).
Versión 1.9.0-alpha01
18 de octubre de 2023
Lanzamiento de androidx.webkit:webkit:1.9.0-alpha01
. La versión 1.9.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- Agregamos la API de varios perfiles, que te permite tener sesiones de navegación independientes entre
WebViews
. Cada perfil tiene sus propios datos (p. ej., cookies). Puedes crear perfiles, asignarlos a instancias deWebView
y recuperarlos más tarde para cualquier acceso a los datos. Hay una clase singletonProfileStore
para ayudarte a administrar perfiles por creación o eliminación con las APIsgetOrCreateProfile
,getProfile
,getAllProfileNames
ydeleteProfile
. La claseProfile
tendrá diferentes APIs para usar y obtener datos asociados con este perfil, como su nombre,GeoLocationPermissions
,ServiceWorkerController
,CookieManager
yWebStorage
. CadaWebView
se ejecutará con el perfil predeterminado de forma predeterminada. Sin embargo, puedes cambiarlo conWebViewCompat#setProfile
. En relación con esto, el perfil de unWebView
se puede recuperar conWebViewCompat#getProfile
. (I32d22). - Agrega APIs para modificar la forma en que se registran los eventos de Attribution Reporting. Presentamos una nueva API
WebSettingsCompat#setAttributionRegistrationBehavior
que permite a los desarrolladores configurar si las fuentes y los activadores se registran como provenientes de la app o del contenido web enWebView
. Este método también se puede usar para inhabilitar Attribution Reporting enWebView
. Además, agregamos una nueva APIWebSettingsCompat#getAttributionRegistrationBehavior
para obtener el comportamiento actual. Para obtener más información, consulta la documentación de Privacy Sandbox. (I661f2). - Agrega APIs para anular los metadatos del usuario-agente. Presentamos una nueva API
WebSettingsCompat#setUserAgentMetadata
para anular los metadatos del usuario-agente para WebView, que se usa para propagar las sugerencias de cliente del usuario-agente. También agregamos otra API nuevaWebSettingsCompat#getUserAgentMetadata
para obtener las anulaciones de usuario-agente actuales. Recomendamos que las apps usen la nueva API para establecer los valores de anulación correctos en lugar de depender del cambio del usuario-agente. (I74500) - Agrega una API para insertar JavaScript para que se ejecute durante la carga de la página. La API de
WebViewCompat.addDocumentStartJavascript
permite que las apps inserten secuencias de comandos en un WebView que se ejecutará antes de que se ejecuten las secuencias de comandos de la página. La API permite que la app especifique una lista de destinos de orígenes para que se habilite la secuencia de comandos, lo que garantiza que solo se ejecute en las páginas previstas. A diferencia deWebView.evaluateJavascript
, esta API permitirá la ejecución de secuencias de comandos en iframes incorporados cuando se carguen. (Ide063).
Versión 1.8
Versión 1.8.0
6 de septiembre de 2023
Lanzamiento de androidx.webkit:webkit:1.8.0
. La versión 1.8.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.7.0
- Se agregó compatibilidad para pasar
ArrayBuffer
a través deWebMessagePortCompat#postMessage
,JavaScriptReplyProxy#postMessage
yWebViewCompat#postWebMessage
, recibirArrayBuffer
desde JavaScript a través deWebMessagePortCompat
yWebMessageListener
, y recibirArrayBuffer
transferible desde JavaScript a través deWebMessagePortCompat
. (aosp/2596550, b/251152171).
Versión 1.8.0-rc01
9 de agosto de 2023
Lanzamiento de androidx.webkit:webkit:1.8.0-rc01
sin cambios desde 1.8.0-beta01
. La versión 1.8.0-rc01 contiene estas confirmaciones.
Versión 1.8.0-beta01
26 de julio de 2023
Lanzamiento de androidx.webkit:webkit:1.8.0-beta01
sin cambios desde 1.8.0-alpha01
. La versión 1.8.0-beta01 contiene estas confirmaciones.
Versión 1.8.0-alpha01
7 de junio de 2023
Lanzamiento de androidx.webkit:webkit:1.8.0-alpha01
. La versión 1.8.0-alpha01 contiene estas confirmaciones.
Cambios en la API
- Consulta la sección Contribución externa.
Contribución externa
- Se agregó compatibilidad para pasar
ArrayBuffer
a través deWebMessagePortCompat#postMessage
,JsReplyProxy#postMessage
yWebViewCompat#postWebMessage
, recibirArrayBuffer
desde JavaScript a través deWebMessagePortCompat
yWebMessageListener
, y recibirArrayBuffer
transferible desde JavaScript a través deWebMessagePortCompat
. Ten en cuenta que esta API solo estará disponible a partir de la versión 116 deWebView
. (Ie7567, b/251152171).
Versión 1.7
Versión 1.7.0
24 de mayo de 2023
Lanzamiento de androidx.webkit:webkit:1.7.0
. La versión 1.7.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.6.0
- Agregamos compatibilidad con la función Image drag en
WebView
. Para permitir que tus usuarios arrastren imágenes fuera deWebView
, agrega el nuevo elementoDropDataContentProvider
al manifiesto de tu app, como se describe en la documentación de la clase. - Agregamos la API de
ProcessGlobalConfig#setDirectoryBasePaths(Context,File,File)
, que se puede usar para establecer los directorios base queWebView
usará para el proceso actual. Al igual que con todos los métodos deProcessGlobalConfig
, se debe llamar a este método antes de que se cree la primera instancia deWebView
. Este método se agrega para proporcionar al framework de Android la capacidad de ajustar la configuración deWebView
. En el caso de las aplicaciones de uso general, no se recomienda usar este método.
Versión 1.7.0-rc01
10 de mayo de 2023
Lanzamiento de androidx.webkit:webkit:1.7.0-rc01
sin cambios desde 1.7.0-beta01
. La versión 1.7.0-rc01 contiene estas confirmaciones.
Versión 1.7.0-beta01
5 de abril de 2023
Lanzamiento de androidx.webkit:webkit:1.7.0-beta01
. La versión 1.7.0-beta01 contiene estas confirmaciones.
Cambios en la API
- Se realizó un cambio menor en la marca de función y el nombre del método, y se hizo que
setDirectoryBasePaths()
acepte File en lugar de String (Ib0d0a).
Versión 1.7.0-alpha03
8 de marzo de 2023
Lanzamiento de androidx.webkit:webkit:1.7.0-alpha03
. La versión 1.7.0-alpha03 contiene estas confirmaciones.
Cambios en la API
- Se agregó la API de
ProcessGlobalConfig#setDirectoryBasePath(String, String)
, que se puede usar para establecer los directorios base queWebView
usará para el proceso actual. (Ibd1a1, b/250553687).
Correcciones de errores
- Se corrigió la regla
ProGuard
no válida que causaba errores de compilación cuando se usabaDexGuard
(Ia65c2, b/270034835).
Versión 1.7.0-alpha02
8 de febrero de 2023
Lanzamiento de androidx.webkit:webkit:1.7.0-alpha02
. La versión 1.7.0-alpha02 contiene estas confirmaciones.
Correcciones de errores
- Errores de documentación de
DropDataContentProvider
.
Versión 1.7.0-alpha01
25 de enero de 2023
Se lanzó androidx.webkit:webkit:1.7.0-alpha01
. La versión 1.7.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- Agregamos compatibilidad con la función Image drag en
WebView
. Para permitir que tus usuarios arrastren imágenes fuera deWebView
, agrega el nuevo elementoDropDataContentProvider
al manifiesto de tu app (05a1a6).
Versión 1.6
Versión 1.6.1
22 de marzo de 2023
Lanzamiento de androidx.webkit:webkit:1.6.1
. La versión 1.6.1 contiene estas confirmaciones.
Correcciones de errores
- Se corrigió el error de análisis de ProGuard (Ia65c2).
Versión 1.6.0
25 de enero de 2023
Se lanzó androidx.webkit:webkit:1.6.0
. La versión 1.6.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.5.0
- Se agregó una nueva API de ProcessGlobalConfig para permitir que las apps proporcionen ajustes de configuración que se deben establecer antes de cargar WebView, como el sufijo de directorio de datos de WebView. La configuración debe establecerse y aplicarse lo antes posible durante el inicio de la aplicación para garantizar que ocurra antes de que otro subproceso pueda llamar a un método que cargue
WebView
en el proceso. - Se agregó una nueva API de CookieManagerCompat para expandir android.webkit.CookieManager con un nuevo método de
getCookieInfo
, que recupera los atributos para todas las cookies establecidas en una URL específica. Esto difiere de la API de getCookie existente enCookieManager
, que solo muestra los atributos de nombre y valor de las cookies. WebSettingsCompat
tiene métodos nuevos para habilitar/inhabilitar el efecto deEnterpriseAuthenticationAppLinkPolicy
si lo configura el administrador enWebView
y para obtener la configuración actual. Esta función permite que WebView abra una app de autenticación en lugar de abrir la URL de autenticación. Esta función no tiene efecto en dispositivos que no son administrados por una política empresarial.- Se agregó una nueva API a
WebSettingsCompat
para permitir que las aplicaciones envíen de forma explícita el nombre del paquete de la app en el encabezadoX-Requested-With
a los orígenes permitidos. Tradicionalmente, el encabezado se envía en cada solicitud deWebView
.
Versión 1.6.0-rc01
11 de enero de 2023
Se lanzó androidx.webkit:webkit:1.6.0-rc01
. La versión 1.6.0-rc01 contiene estas confirmaciones.
Correcciones de errores
- Se corrigió
NullPointerException
enWebViewFeature.isStartupFeatureSupported(Context, String)
cuando se ejecutaba en el SDK < L (Ic7292).
Versión 1.6.0-beta01
7 de diciembre de 2022
Lanzamiento de androidx.webkit:webkit:1.6.0-beta01
. La versión 1.6.0-beta01 contiene estas confirmaciones.
Cambios en la API
- Se modificó
ProcessGlobalConfig
para usar un constructor normal y un método de aplicación estático. Se debe llamar al método de aplicación solo una vez por proceso, lo antes posible, y arrojaráIllegalStateException
si se lo llama más de una vez. Los objetosProcessGlobalConfig
ya no tienen restricciones sobre la cantidad de veces que se puede llamar a los métodos set (I456c3).
Versión 1.6.0-alpha03
9 de noviembre de 2022
Se lanzó androidx.webkit:webkit:1.6.0-alpha03
. La versión 1.6.0-alpha03 contiene estas confirmaciones.
Nuevas funciones
- Se agregó la clase
ProcessGlobalConfig
que permite a los usuarios establecer la configuración global del proceso antes de cargarWebView
.WebView
tiene algunos parámetros de configuración globales de procesos que no se pueden cambiar una vez que se cargóWebView
(p. ej., el directorio de datosWebView
). Esta clase permite que las apps establezcan estos parámetros. La configuración debe establecerse y aplicarse lo antes posible durante el inicio de la aplicación a fin de garantizar que ocurra antes de que otro subproceso pueda llamar a un método que cargueWebView
en el proceso (I7c0e0, b/250553687). - Se agregó una nueva API para permitir que las aplicaciones envíen explícitamente el nombre del paquete de la app en el encabezado X-Requested-With a los orígenes permitidos. Tradicionalmente, el encabezado se envía en cada solicitud de
WebView
(I0adfe, b/226552535).
Cambios en la API
- La API de
WebSettingsCompat#setAlgorithmicDarkeningAllowed
es compatible con todas las versiones de Android enWebView
versión 105 y posteriores. Las versiones anteriores deWebView
solo admitían la API en Android Q y versiones posteriores. Como resultado, esta API ya no está marcada como@RequiresApi(Build.VERSION_CODES.Q)
(I3ac1d).
Versión 1.6.0-alpha02
24 de octubre de 2022
Lanzamiento de androidx.webkit:webkit:1.6.0-alpha02
. La versión 1.6.0-alpha02 contiene estas confirmaciones.
Nuevas funciones
- Se agregó una nueva clase
CookieManagerCompat
junto con una API degetCookieInfo
, que recupera todos los atributos de todas las cookies configuradas en una URL específica. Esto difiere de la API degetCookie
existente enCookieManager
, que solo muestra los atributos de nombre y valor de las cookies (I07365, b/242161756).
Versión 1.6.0-alpha01
24 de agosto de 2022
Se lanzó androidx.webkit:webkit:1.6.0-alpha01
. La versión 1.6.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- Se agregaron APIs en
WebSettingsCompat
para habilitar/inhabilitar el efecto deEnterpriseAuthenticationAppLinkPolicy
si lo configura el administrador enWebView
. Esta función permite queWebView
abra una app de autenticación en lugar de abrir la URL de autenticación. Esta función no tiene efecto en dispositivos que no son administrados por una política empresarial.
Versión 1.5.0
Versión 1.5.0
24 de agosto de 2022
Se lanzó androidx.webkit:webkit:1.5.0
. La versión 1.5.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.4.0
- Una nueva API de
setAlgorithmicDarkeningAllowed
enWebSettingsCompat
reemplaza las APIs anteriores desetForceDark
ysetForceDarkStrategy
. Las apps orientadas al SDK 33 y versiones posteriores (T) deberían usar la API nueva porque la anterior ya no tendrá ningún efecto en esas apps. - Ahora se puede configurar una lista de URLs permitidas para usar el proxy configurado a través de
ProxyCofig.Builder
si se configurasetReverseBypassEnabled
entrue
. Cuando esto esté activo, todas las demás URLs omitirán el proxy configurado.
Versión 1.5.0-rc01
10 de agosto de 2022
Lanzamiento de androidx.webkit:webkit:1.5.0-rc01
sin cambios desde 1.5.0-beta01
. La versión 1.5.0-rc01 contiene estas confirmaciones.
Versión 1.5.0-beta01
29 de junio de 2022
Se lanzó androidx.webkit:webkit:1.5.0-beta01
. La versión 1.5.0-beta01 contiene estas confirmaciones.
Cambios en la API
- Las APIs relacionadas con el oscurecimiento alogrítmico ahora están anotadas para requerir el nivel de API Q. La API no tendrá ningún efecto en los niveles de API menores que Q, ya que el tema oscuro no es una opción en estos dispositivos (I0905e).
Versión 1.5.0-alpha01
18 de mayo de 2022
Lanzamiento de androidx.webkit:webkit:1.5.0-alpha01
. La versión 1.5.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- Agregamos un nuevo método
getVariationsHeader()
enWebViewCompat
para obtener el valor del encabezado de datos del cliente X enviado porWebView
. El valor mostrado será un protobuf de ClientVariations codificado en base64. - Se agregaron APIs en
WebSettingsCompat
para permitir o no el oscurecimiento algorítmico para la app con targetSdk >= 33 (I29597).
Cambios en la API
- Agregamos un nuevo método en
ProxyCofig.Builder
para configurar la omisión inversa. Si estableces la omisión inversa como verdadera, solo las URLs de la lista de omisión utilizarán la configuración de proxy (I9eaa2, b/168728599).
Correcciones de errores
- Se corrigió un error de ortografía en la documentación sobre temas oscuros (I36ebf, b/194343633).
- Se corrigió un error por el cual los métodos
WebViewAssetLoader.Builder
dependían involuntariamente del orden (If420d, b/182196765).
Versión 1.4.0
Versión 1.4.0
16 de diciembre de 2020
Lanzamiento de androidx.webkit:webkit:1.4.0
. La versión 1.4.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.3.0
- Se agregó una nueva API,
setSafeBrowsingAllowlist()
, para reemplazar asetSafeBrowsingWhitelist()
. Esto ayuda a que las apps actualicen su código con el objeto de evitar terminología no inclusiva sin dejar de admitir el mismo conjunto de SDK de Android y versiones de WebView como la API obsoleta. - Se corrigió un error en setProxyOverride que causaba que las reglas de resguardo no se aplicaran de forma correcta.
Versión 1.4.0-rc02
2 de diciembre de 2020
Lanzamiento de androidx.webkit:webkit:1.4.0-rc02
. La versión 1.4.0-rc02 contiene estas confirmaciones.
Correcciones de errores
- Se corrigieron las reglas de resguardo que no se aplicaban correctamente cuando se usaba setProxyOverride.
Versión 1.4.0-rc01
11 de noviembre de 2020
Lanzamiento de androidx.webkit:webkit:1.4.0-rc01
sin cambios desde 1.4.0-beta01
. La versión 1.4.0-rc01 contiene estas confirmaciones.
Versión 1.4.0-beta01
14 de octubre de 2020
Lanzamiento de androidx.webkit:webkit:1.4.0-beta01
sin cambios desde 1.4.0-alpha01
. La versión 1.4.0-beta01 contiene estas confirmaciones.
Versión 1.4.0-alpha01
16 de septiembre de 2020
Lanzamiento de androidx.webkit:webkit:1.4.0-alpha01
. La versión 1.4.0-alpha01 contiene estas confirmaciones.
Cambios en la API
- Se agregó una nueva API,
WebViewCompat#setSafeBrowsingAllowlist()
, para reemplazar lasetSafeBrowsingWhitelist()
. Esto ayuda a que las apps actualicen su código con el objeto de evitar terminología no inclusiva sin dejar de admitir el mismo conjunto de SDK de Android y versiones de WebView como API obsoleta. (I8d65d)
Versión 1.3.0
Versión 1.3.0
19 de agosto de 2020
Lanzamiento de androidx.webkit:webkit:1.3.0
. La versión 1.3.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.2.0
- La API de ForceDarkStrategy proporciona un mayor control del oscurecimiento de WebView (oscurecimiento de CSS/contenido web en comparación con el oscurecimiento automático).
- WebMessageListener y sus API relacionadas proporcionan un mecanismo simple y seguro para establecer la comunicación entre el contenido web y la app de incorporación de WebView.
- La API de
isMultiProcessEnabled
permite comprobar si WebView se ejecuta en modo de procesos múltiples. Esto es posible a partir de Android O y significa que el contenido web se renderiza en un proceso, en zona de pruebas, aislado del proceso de la aplicación. Este procesador de zona de pruebas se puede compartir con otros WebViews en la misma aplicación, pero no se comparte con otros procesos de aplicaciones.
Versión 1.3.0-rc02
5 de agosto de 2020
Lanzamiento de androidx.webkit:webkit:1.3.0-rc02
. La versión 1.3.0-rc02 contiene estas confirmaciones.
Correcciones de errores
- Esto soluciona un problema de compatibilidad por el que
WebMessageListener
a veces fallaba durante el desarrollo local si tu app se iniciaba con la función Instant Run de Android Studio.
Versión 1.3.0-rc01
24 de junio de 2020
Lanzamiento de androidx.webkit:webkit:1.3.0-rc01
sin cambios desde 1.3.0-beta01
. La versión 1.3.0-rc01 contiene estas confirmaciones.
Versión 1.3.0-beta01
10 de junio de 2020
Lanzamiento de androidx.webkit:webkit:1.3.0-beta01
. La versión 1.3.0-beta01 contiene estas confirmaciones.
Nuevas funciones
- La API de
ForceDarkStrategy
permite controlar el oscurecimiento de WebView (oscurecimiento de CSS/contenido web en comparación con el oscurecimiento automático). - Las API de
WebMessageListener
proporcionan un mecanismo simple y seguro para establecer la comunicación entre el contenido web y la app de incorporación de WebView. - La API de
MultiProcessEnabled
permite comprobar si WebView se ejecuta en modo de procesos múltiples.
Versión 1.3.0-alpha03
27 de mayo de 2020
Lanzamiento de androidx.webkit:webkit:1.3.0-alpha03
. La versión 1.3.0-alpha03 contiene estas confirmaciones.
Cambios en la API
- El método
addWebMessageListener
ahora recibe unSet<String>
de reglas de origen permitidas (anteriormente, unList<String>
).
Versión 1.3.0-alpha02
29 de abril de 2020
Lanzamiento de androidx.webkit:webkit:1.3.0-alpha02
. La versión 1.3.0-alpha02 contiene estas confirmaciones.
Nuevas funciones
- API de MultiProcessEnabled para comprobar si WebView se ejecuta en modo de procesos múltiples.
Cambios en la API
- Todas las constantes de estrategia oscura ahora tienen el prefijo
DARK_STRATEGY
.
Versión 1.3.0-alpha01
15 de abril de 2020
Lanzamiento de androidx.webkit:webkit:1.3.0-alpha01
. La versión 1.3.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- API de
ForceDarkStrategy
para controlar el oscurecimiento deWebView
(oscurecimiento de CSS/contenido web en comparación con el oscurecimiento automático). - Las API de
WebMessageListener
proporcionan un mecanismo simple y seguro para establecer la comunicación entre el contenido web y la app de incorporación de WebView.
Versión 1.2.0
Versión 1.2.0
4 de marzo de 2020
Lanzamiento de androidx.webkit:webkit:1.2.0
. La versión 1.2.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.1.0
- Se agregó la API de ForceDark para controlar si se deberían procesar WebViews en modo oscuro.
Versión 1.2.0-rc01
19 de febrero de 2020
Lanzamiento de androidx.webkit:webkit:1.2.0-rc01
sin cambios desde 1.2.0-beta01
. La versión 1.2.0-rc01 contiene estas confirmaciones.
Versión 1.2.0-beta01
5 de febrero de 2020
Lanzamiento de androidx.webkit:webkit:1.2.0-beta01
sin cambios desde 1.2.0-alpha01
. La versión 1.2.0-beta01 contiene estas confirmaciones.
Versión 1.2.0-alpha01
18 de diciembre de 2019
Lanzamiento de androidx.webkit:webkit:1.2.0-alpha01
. La versión 1.2.0-alpha01 contiene estas confirmaciones.
Nuevas funciones
- Se agregó la API de ForceDark para controlar si se debería procesar WebViews en modo oscuro.
Versión 1.1.0
Versión 1.1.0
7 de noviembre de 2019
Lanzamiento de androidx.webkit:webkit:1.1.0
. La versión 1.1.0 contiene estas confirmaciones.
Cambios importantes desde la versión 1.0.0
- API de Getter para complementar setWebViewClient() y setWebChromeClient()
- API de ProxyController para establecer un proxy de solicitud de red para WebViews de una app
- API de WebViewAssetLoader para simplificar la carga de activos, recursos y archivos APK desde el directorio de datos de la app mediante la interceptación de solicitudes (esto permite el acceso a recursos web y locales sin inhabilitar CORS)
- API de TracingController para recopilar información de seguimiento de WebView con fines de depuración
- API de RenderProcess para administrar los servicios de procesamiento de WebView y detectar cuándo el contenido con mal comportamiento hace que los procesadores de WebView no respondan
- Se actualizaron las API existentes para que incluyan anotaciones de nulabilidad (
@NonNull
,@Nullable
) y de subprocesos (@UiThread
,@WorkerThread
).
Versión 1.1.0-rc01
9 de octubre de 2019
Lanzamiento de androidx.webkit:webkit:1.1.0-rc01
. La versión 1.1.0-rc01 contiene estas confirmaciones.
Corrección de errores
- Se solucionó un problema en el que
setWebViewRenderProcessClient()
podía bloquearse si se pasaba un cliente nulo.
Versión 1.1.0-beta01
5 de septiembre de 2019
Lanzamiento de androidx.webkit:webkit:1.1.0-beta01
. Para conocer las confirmaciones incluidas en esta versión, consulta este vínculo.
Nuevas funciones
- Se agregó un nuevo objeto
InternalStoragePathHandler
enWebViewAssetLoader
para cargar archivos desde el directorio de datos de la app.
Cambios en la API
ProxyConfig#getProxyRules()
ahora muestra una lista no modificable de instanciasProxyRule
, que es una nueva clase para contener un filtro de esquema y su URL proxy correspondiente.
Correcciones de errores
WebViewAssetLoader
usa de forma predeterminada un tipo de MIME "text/plain" (en lugar de nulo) cuando no puede adivinar el tipo de MIME desde la ruta del archivo.WebViewAssetLoader
ya no arroja un objetoNullPointerException
cuando se cargan archivos con caracteres especiales en sus nombres de ruta de acceso.
Versión 1.1.0-alpha02
7 de agosto de 2019
Lanzamiento de androidx.webkit:webkit:1.1.0-alpha02
. Para conocer las confirmaciones incluidas en esta versión, consulta este vínculo.
Nuevas funciones
WebViewAssetLoader
expone la interfazPathHandler
para permitir que las apps creen una funcionalidad personalizada de administración de rutas de acceso.
Cambios en la API
- Ahora,
WebViewAssetLoader
es una clase final, ya que no debe subclasificarse. - Las implementaciones de
WebViewAssetLoader#PathHandler
ahora son públicas y finales. - Se realizaron cambios pequeños en los nombres de los métodos ProxyConfig.
ProxyController
: Se agregaron nuevos métodosaddDirect()
yaddDirect(String)
para conectarse directamente a los servidores. Se quitó la cadena DIRECTA.- Se actualizaron las API existentes para que incluyan anotaciones de nulabilidad (
@NonNull
,@Nullable
) y de subprocesos (@UiThread
,@WorkerThread
).
Versión 1.1.0-alpha01
7 de mayo de 2019
Lanzamiento de androidx.webkit:webkit:1.1.0-alpha01
. Para conocer las confirmaciones incluidas en esta versión, consulta este vínculo.
Nuevas funciones
- API de Getter para complementar
setWebViewClient()
ysetWebChromeClient()
- API de ProxyController para establecer un proxy de solicitud de red para WebViews de una app
- API de AssetLoader para simplificar la carga de activos y recursos de APK mediante la interceptación de solicitudes, lo que permite el acceso a los recursos web sin inhabilitar CORS
- API de TracingController para recopilar información de seguimiento de WebView con fines de depuración
- API de RenderProcess para administrar los servicios de procesamiento de WebView y detectar cuándo el contenido con mal comportamiento hace que los procesadores de WebView no respondan
Corrección de errores
- Se hicieron correcciones menores al formato de documentación para las API existentes.