WebKit

Trabaja con las API modernas de WebView en Android 5 y versiones posteriores.
Actualización más reciente Versión estable Versión potencial Versión beta Versión alfa
13 de noviembre de 2024 1.9.0 - - 1.13.0-alpha01

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.

Crear un error nuevo

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-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 este WebSettings. 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 este WebSettings. 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 llamadas a WebAuthn en un WebView para sus apps con WebSettingsCompat#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 inhabilitar BackForwardCache. 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 a WebAuthn en un WebView para sus apps con WebSettingsCompat#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 de setAudioMuted y isAudioMuted, que son similares a silenciar una pestaña en Chrome.
  • Se introdujo URLUtilCompat, que admite el análisis de encabezados Content-Disposition que usan el atributo de valor codificado filename*, como se define en la RFC 6266. La API de compatibilidad también expone directamente un método para analizar el encabezado Content-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 y isAudioMuted para silenciar (y activar) WebViews. Este método te permitirá evitar que un WebView 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 en URLUtilCompat admite el análisis de encabezados Content-Disposition que usan el atributo de valor codificado filename* como se define en la RFC 6266. La API de compatibilidad también expone directamente un método para analizar el encabezado Content-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 Media Integrity de WebView de Android 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.
  • 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.
  • 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.
  • 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 clase UserAgentMetadata sea coherente. (Ibf195).
  • Anotación de ProfileStore, WebViewCompat#setProfile y WebViewCompat.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 de WebView y recuperarlos más tarde para acceder a los datos. Hay una clase singleton ProfileStore para ayudarte a administrar perfiles por creación o eliminación con las APIs getOrCreateProfile, getProfile, getAllProfileNames y deleteProfile. La clase Profile tendrá diferentes APIs para usar y obtener datos asociados con este perfil, como su nombre, GeoLocationPermissions, ServiceWorkerController, CookieManager y WebStorage. Cada WebView se ejecutará con el perfil predeterminado de forma predeterminada. Sin embargo, puedes cambiarlo con WebViewCompat#setProfile. En relación con esto, el perfil de un WebView se puede recuperar con WebViewCompat#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 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. (I661f2).
  • Agrega APIs para anular los metadatos del usuario-agente. Presentamos una nueva API WebSettingsCompat#setUserAgentMetadata para anular los metadatos del usuario-agente de WebView, que se usa 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 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 de WebView.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

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 de WebMessagePortCompat#postMessage, JsReplyProxy#postMessage y WebViewCompat#postWebMessage, recibir ArrayBuffer desde JavaScript a través de WebMessagePortCompat y WebMessageListener, y recibir ArrayBuffer transferible desde JavaScript a través de WebMessagePortCompat. Ten en cuenta que esta API solo estará disponible a partir de la versión 116 de WebView. (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 de WebView, agrega el nuevo elemento DropDataContentProvider 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 que WebView usará para el proceso actual. Al igual que con todos los métodos de ProcessGlobalConfig, se debe llamar a este método antes de que se cree la primera instancia de WebView. Este método se agrega para proporcionar al framework de Android la capacidad de ajustar la configuración de WebView. 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 que WebView usará para el proceso actual. (Ibd1a1, b/250553687).

Correcciones de errores

  • Se corrigió una regla ProGuard no válida que causaba errores de compilación cuando se usaba DexGuard (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 de WebView, agrega el nuevo elemento DropDataContentProvider 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 en CookieManager, que solo muestra los atributos de nombre y valor de las cookies.
  • WebSettingsCompat tiene métodos nuevos para habilitar/inhabilitar el efecto de EnterpriseAuthenticationAppLinkPolicy si lo configura el administrador en WebView 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 encabezado X-Requested-With a los orígenes permitidos. Tradicionalmente, el encabezado se envía en cada solicitud de WebView.

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 en WebViewFeature.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 objetos ProcessGlobalConfig 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 cargar WebView. 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 datos WebView). 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 cargue WebView 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 en WebView versión 105 y posteriores. Las versiones anteriores de WebView 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 de getCookieInfo, que recupera todos los atributos de todas las cookies configuradas en una URL específica. Esto difiere de la API de getCookie existente en CookieManager, 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 de EnterpriseAuthenticationAppLinkPolicy si lo configura el administrador en WebView. 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.

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 en WebSettingsCompat reemplaza las APIs anteriores de setForceDark y setForceDarkStrategy. 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 configura setReverseBypassEnabled en true. 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() en WebViewCompat para obtener el valor del encabezado de datos del cliente X enviado por WebView. 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 a setSafeBrowsingWhitelist(). 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 la setSafeBrowsingWhitelist(). 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 un Set<String> de reglas de origen permitidas (anteriormente, un List<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 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.

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 en WebViewAssetLoader para cargar archivos desde el directorio de datos de la app.

Cambios en la API

  • ProxyConfig#getProxyRules() ahora muestra una lista no modificable de instancias ProxyRule, 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 objeto NullPointerException 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 interfaz PathHandler 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étodos addDirect() y addDirect(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() y setWebChromeClient()
  • 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.