Webkit

Utilisez les API WebView modernes sous Android 5 ou version ultérieure.
Dernière mise à jour Version stable Version finale Version bêta Version alpha
20 mars 2024 1.9.0 - 1.11.0-beta01 -

Déclarer des dépendances

Pour ajouter une dépendance sur Webkit, vous devez ajouter le dépôt Maven de Google à votre projet. Pour en savoir plus, consultez la section Dépôt Maven de Google.

Ajoutez les dépendances correspondant aux artefacts dont vous avez besoin dans le fichier build.gradle de votre application ou de votre module :

Groovy

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

Kotlin

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

Pour en savoir plus sur les dépendances, consultez Ajouter des dépendances de compilation.

Commentaires

Vos commentaires nous aident à améliorer Jetpack. N'hésitez pas à nous contacter si vous découvrez de nouveaux problèmes ou si vous avez des idées pour améliorer cette bibliothèque. Veuillez consulter les problèmes existants de cette bibliothèque avant d'en signaler un nouveau. Vous pouvez ajouter votre vote à un problème existant en cliquant sur le bouton en forme d'étoile.

Signaler un nouveau problème

Pour en savoir plus, consultez la documentation sur l'outil Issue Tracker.

Version 1.11

Version 1.11.0-beta01

20 mars 2024

Publication d'androidx.webkit:webkit:1.11.0-beta01 sans aucune modification notable. La version 1.11.0-beta01 contient ces commits.

Version 1.11.0-alpha02

21 février 2024

Publication d'androidx.webkit:webkit:1.11.0-alpha02. Liste des commits de la version 1.11.0-alpha02

Nouvelles fonctionnalités

  • Ajout des méthodes setAudioMuted et isAudioMuted pour ignorer (et réactiver) WebViews. Cette méthode vous permet d'empêcher une WebView de lire des contenus audio. (Ie7a33).

Modifications apportées à l'API

  • URLUtilCompat est devenu final, car il ne doit pas être sous-classé. (I49ec1).

Version 1.11.0-alpha01

7 février 2024

Publication d'androidx.webkit:webkit:1.11.0-alpha01. Liste des commits de la version 1.11.0-alpha01

Nouvelles fonctionnalités

  • Ajout de la compatibilité pour URLUtil.guessFileName. La version de compatibilité dans URLUtilCompat permet d'analyser les en-têtes Content-Disposition qui utilisent l'attribut de valeur encodée filename* tel que défini dans le document RFC 6266. L'API de compatibilité expose également directement une méthode permettant d'analyser l'en-tête Content-Disposition lorsqu'une suggestion de nom de fichier basée sur l'URL et le type MIME n'est pas souhaitée. (If6ae7, b/309927164).

Version 1.10

Version 1.10.0

24 janvier 2024

Publication d'androidx.webkit:webkit:1.10.0. Liste des commits de la version 1.10.0

Changements importants depuis la version 1.9.0

  • Ajout d'une nouvelle API à WebSettingsCompat pour contrôler le comportement expérimental de l'API Android WebView Media Integrity en désactivant complètement l'API ou en limitant le partage de l'identité de l'application dans la réponse de l'API. Vous pouvez activer/désactiver cette option pour toutes les origines et au cas par cas.

Version 1.10.0-rc01

10 janvier 2024

Publication d'androidx.webkit:webkit:1.10.0-rc01. Cette version ne contient aucune modification par rapport à la version 1.10.0-beta01.

Version 1.10.0-beta01

13 décembre 2023

Publication d'androidx.webkit:webkit:1.10.0-beta01. Liste des commits de la version 1.10.0-beta01

  • Aucune modification fonctionnelle depuis 1.10.0-alpha01.

Version 1.10.0-alpha01

29 novembre 2023

Publication d'androidx.webkit:webkit:1.10.0-alpha01. Liste des commits de la version 1.10.0-alpha01

Nouvelles fonctionnalités

  • Ajout d'une API à WebSettingsCompat pour contrôler le comportement expérimental de l'API Android WebView Media Integrity en désactivant complètement l'API ou en limitant le partage de l'identité de l'application dans la réponse de l'API. Vous pouvez activer/désactiver cette option pour toutes les origines et au cas par cas.

Version 1.9

Version 1.9.0

29 novembre 2023

Publication d'androidx.webkit:webkit:1.9.0. Liste des commits de la version 1.9.0

Changements importants depuis la version 1.8.0

  • Ajout d'une API multiprofil pour les WebViews.
  • Ajout d'une API pour injecter et exécuter JavaScript avant le chargement de la page.
    • L'API WebViewCompat#addDocumentStartJavascript permet aux applications d'injecter des scripts dans un WebView dont l'exécution est garantie avant l'exécution des scripts de page. L'API permet à l'application de spécifier une liste d'origines cibles sur lesquelles activer le script, garantissant ainsi qu'il ne s'exécute que sur les pages prévues. Contrairement à WebView# evaluateJavascript, cette API permet l'exécution de scripts dans des cadres iFrame intégrés lors de leur chargement. Les applications peuvent utiliser cette nouvelle API en association avec WebViewCompat#addWebMessageListener pour configurer de manière fiable la communication bidirectionnelle avec JavaScript sur la page.
  • Ajout d'API permettant de modifier la façon dont les événements Attribution Reporting de la Privacy Sandbox sont enregistrés.
    • Nous avons lancé une nouvelle API WebSettingsCompat#setAttributionRegistrationBehavior qui permet aux développeurs de configurer si les sources d'attribution et les déclencheurs sont enregistrés comme provenant de l'application elle-même ou du contenu Web dans la WebView. Cette méthode permet également de désactiver Attribution Reporting dans WebView. Nous avons également ajouté une API WebSettingsCompat#getAttributionRegistrationBehavior pour obtenir le comportement actuel.
    • Pour en savoir plus, consultez la documentation de la Privacy Sandbox.
  • Ajout d'API permettant de remplacer les métadonnées user-agent pour les indications client.
    • Nous avons lancé une nouvelle API, WebSettingsCompat#setUserAgentMetadata, afin de remplacer les métadonnées du user-agent pour WebView utilisées pour renseigner les indices client du user-agent. Nous avons également ajouté une nouvelle API, WebSettingsCompat#getUserAgentMetadata, pour obtenir les remplacements actuels de user-agent. Nous encourageons les applications à utiliser la nouvelle API pour définir les valeurs de remplacement appropriées chaque fois qu'elles modifient la chaîne user-agent par défaut à l'aide de WebSettings.setUserAgentString. Ainsi, les bonnes valeurs sont utilisées dans toutes les situations.

Version 1.9.0-rc01

15 novembre 2023

Publication d'androidx.webkit:webkit:1.9.0-rc01. Cette version ne contient aucune modification par rapport à la version 1.9.0-beta01.

Version 1.9.0-beta01

1er novembre 2023

Publication d'androidx.webkit:webkit:1.9.0-beta01. Liste des commits de la version 1.9.0-beta01.

Modifications apportées à l'API

  • Résolvez le problème de possibilité de valeur nulle de l'API User-Agent Metadata. Nous mettons à jour la classe BrandVersion pour qu'elle utilise un modèle de compilateur, et rendons cohérentes la possibilité de valeur nulle des getters et des setters de la classe UserAgentMetadata. (Ibf195).
  • Annotation de ProfileStore, WebViewCompat#setProfile et WebViewCompat.getProfile avec @UiThread. (I499b2).

Version 1.9.0-alpha01

18 octobre 2023

Publication d'androidx.webkit:webkit:1.9.0-alpha01. Liste des commits de la version 1.9.0-alpha01

Nouvelles fonctionnalités

  • Nous avons ajouté l'API multiprofil qui vous permet d'avoir des sessions de navigation distinctes entre WebViews. Chaque profil possède ses propres données (des cookies, par exemple). Vous pouvez créer des profils, les attribuer à des instances WebView et les récupérer ultérieurement pour tout accès aux données. La classe singleton ProfileStore vous aide à gérer les profils par création ou suppression à l'aide d'API : getOrCreateProfile, getProfile, getAllProfileNames et deleteProfile. La classe Profile disposera de différentes API permettant d'obtenir les données associées à ce profil, telles que son nom, GeoLocationPermissions, ServiceWorkerController, CookieManager et WebStorage. Chaque WebView s'exécutera avec le profil par défaut. Toutefois, vous pouvez modifier ce paramètre à l'aide de WebViewCompat#setProfile. En conséquence, le profil d'un WebView peut être récupéré à l'aide de WebViewCompat#getProfile. (I32d22).
  • Ajoutez des API pour modifier la manière dont les événements Attribution Reporting sont enregistrés. Nous avons lancé une nouvelle API WebSettingsCompat#setAttributionRegistrationBehavior qui permet aux développeurs de configurer si les sources et les déclencheurs sont enregistrés comme provenant de l'application elle-même ou du contenu Web de WebView. Cette méthode permet également de désactiver Attribution Reporting dans WebView. Nous avons également ajouté une API WebSettingsCompat#getAttributionRegistrationBehavior pour obtenir le comportement actuel. Pour en savoir plus, consultez la documentation de la Privacy Sandbox. (I661f2).
  • Ajout d'API pour remplacer les métadonnées du user-agent. Nous avons lancé une nouvelle API WebSettingsCompat#setUserAgentMetadata pour remplacer les métadonnées du user-agent pour WebView, qui est utilisée pour renseigner les indices client du user-agent. Nous avons également ajouté une autre API WebSettingsCompat#getUserAgentMetadata pour obtenir les remplacements de user-agent actuels. Nous encourageons les applications à utiliser la nouvelle API pour définir les valeurs de remplacement appropriées au lieu de devoir changer le user-agent. (I74500).
  • Ajout d'une API pour injecter du code JavaScript à exécuter pendant le chargement de la page. L'API WebViewCompat.addDocumentStartJavascript permet aux applications d'injecter des scripts dans une WebView, qui sera exécuté avant l'exécution des scripts de page. L'API permet à l'application de spécifier une liste d'origines cibles sur lesquelles activer le script, garantissant ainsi qu'il ne s'exécute que sur les pages prévues. Contrairement à WebView.evaluateJavascript, cette API autorise l'exécution de scripts dans des iFrames intégrés lors de leur chargement. (Ide063).

Version 1.8

Version 1.8.0

6 septembre 2023

Publication d'androidx.webkit:webkit:1.8.0. Liste des commits de la version 1.8.0

Changements importants depuis la version 1.7.0

Version 1.8.0-rc01

9 août 2023

Publication d'androidx.webkit:webkit:1.8.0-rc01 sans aucune modification par rapport à la version 1.8.0-beta01. Liste des commits de la version 1.8.0-rc01

Version 1.8.0-beta01

26 juillet 2023

Publication d'androidx.webkit:webkit:1.8.0-beta01 sans aucune modification par rapport à la version 1.8.0-alpha01. Liste des commits de la version 1.8.0-beta01.

Version 1.8.0-alpha01

7 juin 2023

Publication d'androidx.webkit:webkit:1.8.0-alpha01. Liste des commits de la version 1.8.0-alpha01

Modifications apportées à l'API

  • Consultez la section "Contribution externe".

Contribution externe

  • Prise en charge de la transmission de ArrayBuffer via WebMessagePortCompat#postMessage, JsReplyProxy#postMessage et WebViewCompat#postWebMessage, de la réception de ArrayBuffer de JavaScript sur WebMessagePortCompat et WebMessageListener, et de la réception de ArrayBuffer transférables à partir de JavaScript via WebMessagePortCompat. Veuillez noter que cette API ne sera disponible qu'à partir de la version 116 de WebView. (Ie7567, b/251152171).

Version 1.7

Version 1.7.0

24 mai 2023

Publication d'androidx.webkit:webkit:1.7.0. Liste des commits de la version 1.7.0

Changements importants depuis la version 1.6.0

  • Nous avons ajouté la prise en charge du glissement d'image dans WebView. Vous pouvez permettre à vos utilisateurs de faire glisser des images hors de WebView en ajoutant le nouveau DropDataContentProvider au fichier manifeste de votre application, comme décrit dans la documentation de la classe.
  • Nous avons ajouté l'API ProcessGlobalConfig#setDirectoryBasePaths(Context,File,File), qui permet de définir les répertoires de base que WebView utilisera pour le processus actuel. Comme pour toutes les méthodes sur ProcessGlobalConfig, cette méthode doit être appelée avant que la première instance de WebView ne soit instanciée. Cette méthode a été ajoutée pour permettre au framework Android d'ajuster les paramètres WebView. Il n'est pas recommandé d'utiliser cette méthode pour les applications à usage général.

Version 1.7.0-rc01

10 mai 2023

Publication d'androidx.webkit:webkit:1.7.0-rc01 sans aucune modification par rapport à la version 1.7.0-beta01. Liste des commits de la version 1.7.0-rc01.

Version 1.7.0-beta01

5 avril 2023

Publication d'androidx.webkit:webkit:1.7.0-beta01. Liste des commits de la version 1.7.0-beta01

Modifications apportées à l'API

  • Modification mineure du flag de fonctionnalité et du nom de la méthode, qui oblige setDirectoryBasePaths() à accepter "File" au lieu de "String" (Chaîne). (Ib0d0a)

Version 1.7.0-alpha03

8 mars 2023

Publication d'androidx.webkit:webkit:1.7.0-alpha03. Liste des commits de la version 1.7.0-alpha03

Modifications apportées à l'API

  • Ajout de l'API ProcessGlobalConfig#setDirectoryBasePath(String, String), qui permet de définir les répertoires de base que WebView utilisera pour le processus en cours. (Ibd1a1, b/250553687).

Correction de bugs

  • Correction d'une règle ProGuard non valide entraînant des erreurs de compilation lors de l'utilisation de DexGuard. (Ia65c2, b/270034835)

Version 1.7.0-alpha02

8 février 2023

Publication d'androidx.webkit:webkit:1.7.0-alpha02. Liste des commits de la version 1.7.0-alpha02

Correction de bugs

  • Bugs relatifs à la documentation pour DropDataContentProvider.

Version 1.7.0-alpha01

25 janvier 2023

Publication d'androidx.webkit:webkit:1.7.0-alpha01. Liste des commits de la version 1.7.0-alpha01

Nouvelles fonctionnalités

  • Nous avons ajouté la possibilité de faire glisser des images dans WebView. Vous pouvez autoriser vos utilisateurs à retirer des images de WebView par glisser-déposer, en ajoutant le nouveau DropDataContentProvider au fichier manifeste de votre application. (05a1a6)

Version 1.6

Version 1.6.1

22 mars 2023

Publication d'androidx.webkit:webkit:1.6.1. Liste des commits de la version 1.6.1

Correction de bugs

  • Correction de l'erreur d'analyse ProGuard. (Ia65c2)

Version 1.6.0

25 janvier 2023

Publication d'androidx.webkit:webkit:1.6.0. Liste des commits de la version 1.6.0

Changements importants depuis la version 1.5.0

  • Une nouvelle API ProcessGlobalConfig a été ajoutée pour permettre aux applications de fournir les paramètres de configuration qui doivent être définis avant le chargement de WebView, comme le suffixe du répertoire de données WebView. La configuration doit être définie et appliquée le plus tôt possible au démarrage de l'application, afin qu'elle soit active avant qu'un autre thread puisse appeler une méthode qui charge WebView dans le processus.
  • Une nouvelle API CookieManagerCompat a été ajoutée pour étendre android.webkit.CookieManager avec une nouvelle méthode getCookieInfo, qui récupère tous les attributs de tous les cookies définis sur une URL spécifique. Elle diffère de l'API getCookie existante dans CookieManager, qui ne renvoie que les attributs de nom et de valeur des cookies.
  • WebSettingsCompat intègre de nouvelles méthodes pour activer/désactiver l'effet de EnterpriseAuthenticationAppLinkPolicy (si défini par l'administrateur) dans WebView et pour obtenir le paramètre actuel. Cette fonctionnalité permet à WebView d'ouvrir une application d'authentification au lieu d'ouvrir l'URL d'authentification. Cette fonctionnalité n'a aucun effet sur les appareils qui ne sont pas gérés par une stratégie d'entreprise.
  • Ajout d'une nouvelle API à WebSettingsCompat permettant aux applications d'envoyer explicitement le nom du package de l'application dans l'en-tête X-Requested-With aux origines de la liste d'autorisation. Généralement, l'en-tête est envoyé à chaque requête provenant de WebView.

Version 1.6.0-rc01

11 janvier 2023

Publication d'androidx.webkit:webkit:1.6.0-rc01. Liste des commits de la version 1.6.0-rc01

Correction de bugs

  • Correction de NullPointerException dans WebViewFeature.isStartupFeatureSupported(Context, String) lors de l'exécution sur une version de SDK inférieure à L. (Ic7292)

Version 1.6.0-beta01

7 décembre 2022

Publication d'androidx.webkit:webkit:1.6.0-beta01. Liste des commits de la version 1.6.0-beta01

Modifications apportées à l'API

  • ProcessGlobalConfig a été modifié pour qu'il utilise un constructeur normal et une méthode d'application statique. La méthode "apply" ne doit être appelée qu'une seule fois par processus, le plus tôt possible, et renvoie IllegalStateException si elle est appelée plusieurs fois. Les objets ProcessGlobalConfig ne sont plus soumis à des restrictions concernant le nombre d'appels dont les setters peuvent faire l'objet. (I456c3)

Version 1.6.0-alpha03

9 novembre 2022

Publication d'androidx.webkit:webkit:1.6.0-alpha03. Liste des commits de la version 1.6.0-alpha03

Nouvelles fonctionnalités

  • Ajout de la classe ProcessGlobalConfig pour permettre aux utilisateurs de définir la configuration globale du processus avant de charger WebView. WebView comporte des paramètres de configuration globaux du processus qui ne peuvent pas être modifiés une fois que WebView a été chargé (par exemple, le répertoire de données WebView). Cette classe permet aux applications de définir ces paramètres. La configuration doit être définie et appliquée le plus tôt possible au démarrage de l'application, afin qu'elle soit active avant qu'un autre thread puisse appeler une méthode qui charge WebView dans le processus. (I7c0e0, b/250553687)
  • Ajout d'une API permettant aux applications d'envoyer explicitement le nom du package de l'application dans l'en-tête X-Requested-With aux origines de la liste d'autorisation. Généralement, l'en-tête est envoyé à chaque requête provenant de WebView. (I0adfe, b/226552535)

Modifications apportées à l'API

  • L'API WebSettingsCompat#setAlgorithmicDarkeningAllowed est compatible avec toutes les versions d'Android à partir de la version 105 de WebView. Les versions précédentes de WebView n'acceptaient l'API que sur Android Q ou version ultérieure. C'est pourquoi cette API n'est plus marquée comme @RequiresApi(Build.VERSION_CODES.Q). (I3ac1d)

Version 1.6.0-alpha02

24 octobre 2022

Publication d'androidx.webkit:webkit:1.6.0-alpha02. Liste des commits de la version 1.6.0-alpha02

Nouvelles fonctionnalités

  • Ajout d'une classe CookieManagerCompat avec une API getCookieInfo qui récupère tous les attributs de tous les cookies définis sur une URL spécifique. Cela diffère de l'API getCookie existante dans CookieManager, qui ne renvoie que les attributs de nom et de valeur des cookies. (I07365, b/242161756)

Version 1.6.0-alpha01

24 août 2022

Publication d'androidx.webkit:webkit:1.6.0-alpha01. Liste des commits de la version 1.6.0-alpha01

Nouvelles fonctionnalités

  • Ajout d'API dans WebSettingsCompat pour activer/désactiver l'effet de EnterpriseAuthenticationAppLinkPolicy s'il est défini par l'administrateur dans WebView. Cette fonctionnalité permet à WebView d'ouvrir une application d'authentification au lieu d'ouvrir l'URL d'authentification. Cette fonctionnalité n'a aucun effet sur les appareils qui ne sont pas gérés par une stratégie d'entreprise.

Version 1.5.0

Version 1.5.0

24 août 2022

Publication d'androidx.webkit:webkit:1.5.0. Liste des commits de la version 1.5.0

Changements importants depuis la version 1.4.0

  • Une nouvelle API setAlgorithmicDarkeningAllowed sur WebSettingsCompat remplace les anciennes API setForceDark et setForceDarkStrategy. Les applications ciblant le SDK 33 ou une version ultérieure doivent utiliser la nouvelle API, car l'ancienne API n'aura plus aucun effet pour ces applications.
  • Vous pouvez maintenant définir une liste d'autorisation d'URL utilisant le proxy configuré via ProxyCofig.Builder en définissant setReverseBypassEnabled sur true. Dans ce cas, toutes les autres URL contournent le proxy configuré.

Version 1.5.0-rc01

10 août 2022

Publication d'androidx.webkit:webkit:1.5.0-rc01 sans aucune modification par rapport à la version 1.5.0-beta01. Liste des commits de la version 1.5.0-rc01

Version 1.5.0-beta01

29 juin 2022

Publication d'androidx.webkit:webkit:1.5.0-beta01. Liste des commits de la version 1.5.0-beta01

Modifications apportées à l'API

  • Les API liées à l'assombrissement algorithmique sont désormais annotées pour exiger le niveau d'API Q. L'API n'aura aucun effet sur les niveaux d'API inférieurs à Q, car le thème sombre n'est pas une option proposée sur ces appareils. (I0905e)

Version 1.5.0-alpha01

18 mai 2022

Publication d'androidx.webkit:webkit:1.5.0-alpha01. Liste des commits de la version 1.5.0-alpha01

Nouvelles fonctionnalités

  • Ajout d'une nouvelle méthode getVariationsHeader() sur WebViewCompat pour obtenir la valeur de l'en-tête de données du client X envoyée par WebView. La valeur renvoyée sera un tampon de protocole ClientVariations encodé en base64.
  • Ajout d'API sur WebSettingsCompat afin d'autoriser ou d'interdire l'assombrissement algorithmique pour les applications avec un targetSdk supérieur ou égal à 33. (I29597)

Modifications apportées à l'API

  • Ajout d'une nouvelle méthode dans ProxyCofig.Builder pour définir un contournement inverse. Si vous définissez le contournement inverse sur "true", seules les URL de la liste de contournements utiliseront les paramètres proxy. (I9eaa2, b/168728599)

Correction de bugs

  • Correction d'une faute de frappe dans la documentation sur le thème sombre. (I36ebf, b/194343633)
  • Correction d'un bug qui entraînait involontairement une dépendance à l'ordre des méthodes WebViewAssetLoader.Builder. (If420d, b/182196765)

Version 1.4.0

Version 1.4.0

16 décembre 2020

Publication d'androidx.webkit:webkit:1.4.0. Liste des commits de la version 1.4.0

Principales modifications depuis la version 1.3.0

  • Ajout d'une nouvelle API setSafeBrowsingAllowlist() pour remplacer setSafeBrowsingWhitelist(). Cela permet aux applications de mettre à jour leur code afin d'éviter toute terminologie non inclusive, tout en continuant à utiliser la même gamme de SDK Android et de versions de WebView que l'API obsolète.
  • Correction d'un bug dans "setProxyOverride" qui empêchait l'application correcte des règles de remplacement.

Version 1.4.0-rc02

2 décembre 2020

Publication d'androidx.webkit:webkit:1.4.0-rc02. Liste des commits de la version 1.4.0-rc02

Correction de bugs

  • Correction des règles de remplacement qui n'étaient pas correctement appliquées lors de l'utilisation de "setProxyOverride".

Version 1.4.0-rc01

11 novembre 2020

Publication d'androidx.webkit:webkit:1.4.0-rc01 sans aucune modification par rapport à la version 1.4.0-beta01. Liste des commits de la version 1.4.0-rc01

Version 1.4.0-beta01

14 octobre 2020

Publication d'androidx.webkit:webkit:1.4.0-beta01 sans aucune modification par rapport à la version 1.4.0-alpha01. Liste des commits de la version 1.4.0-beta01

Version 1.4.0-alpha01

16 septembre 2020

Publication d'androidx.webkit:webkit:1.4.0-alpha01. Liste des commits de la version 1.4.0-alpha01

Modifications apportées à l'API

  • Ajout d'une nouvelle API WebViewCompat#setSafeBrowsingAllowlist() pour remplacer setSafeBrowsingWhitelist(). Cela permet aux applications de mettre à jour leur code afin d'éviter toute terminologie non inclusive, tout en continuant à utiliser la même gamme de SDK Android et de versions de WebView que l'API obsolète. (I8d65d)

Version 1.3.0

Version 1.3.0

19 août 2020

Publication d'androidx.webkit:webkit:1.3.0. Liste des commits de la version 1.3.0

Principales modifications depuis la version 1.2.0

  • L'API ForceDarkStrategy offre un plus grand contrôle sur l'assombrissement de WebView (l'assombrissement du contenu Web/CSS par rapport à l'assombrissement automatique).
  • "WebMessageListener" et les API associées fournissent un mécanisme simple et sécurisé pour établir la communication entre les contenus Web et l'application d'intégration de WebView.
  • L'API isMultiProcessEnabled permet de vérifier si WebView est exécuté dans plusieurs processus. Cela est possible à partir d'Android O et signifie que le contenu Web est affiché dans un processus de moteur de rendu en bac à sable, distinct du processus de l'application. Ce moteur de rendu en bac à sable peut être partagé avec d'autres WebView de la même application, mais pas avec d'autres processus d'application.

Version 1.3.0-rc02

5 août 2020

Publication d'androidx.webkit:webkit:1.3.0-rc02. Liste des commits de la version 1.3.0-rc02

Correction de bugs

  • Cela corrige un problème de compatibilité qui entraînait parfois le plantage de WebMessageListener lors du développement local si votre application était lancée avec l'exécution instantanée d'Android Studio.

Version 1.3.0-rc01

24 juin 2020

Publication d'androidx.webkit:webkit:1.3.0-rc01 sans aucune modification par rapport à la version 1.3.0-beta01. Liste des commits de la version 1.3.0-rc01

Version 1.3.0-beta01

10 juin 2020

Publication d'androidx.webkit:webkit:1.3.0-beta01. Liste des commits de la version 1.3.0-beta01

Nouvelles fonctionnalités

  • L'API ForceDarkStrategy permet de contrôler l'assombrissement de WebView (l'assombrissement du contenu Web/CSS par rapport à l'assombrissement automatique).
  • Les API WebMessageListener fournissent un mécanisme simple et sécurisé pour établir la communication entre les contenus Web et l'application d'intégration de WebView.
  • L'API MultiProcessEnabled permet de vérifier si WebView est exécuté en mode multiprocessus.

Version 1.3.0-alpha03

27 mai 2020

Publication d'androidx.webkit:webkit:1.3.0-alpha03. Liste des commits de la version 1.3.0-alpha03

Modifications apportées à l'API

  • La méthode addWebMessageListener reçoit désormais un Set<String> de règles d'origine autorisées (auparavant, une List<String>).

Version 1.3.0-alpha02

29 avril 2020

Publication d'androidx.webkit:webkit:1.3.0-alpha02. Liste des commits de la version 1.3.0-alpha02

Nouvelles fonctionnalités

  • L'API MultiProcessEnabled permet de vérifier si WebView est exécuté en mode multiprocessus.

Modifications apportées à l'API

  • Toutes les constantes de stratégie sombre sont maintenant précédées de DARK_STRATEGY.

Version 1.3.0-alpha01

15 avril 2020

Publication d'androidx.webkit:webkit:1.3.0-alpha01. Liste des commits de la version 1.3.0-alpha01

Nouvelles fonctionnalités

  • L'API ForceDarkStrategy permet de contrôler l'assombrissement de WebView (l'assombrissement du contenu Web/CSS par rapport à l'assombrissement automatique).
  • Les API WebMessageListener fournissent un mécanisme simple et sécurisé pour établir la communication entre les contenus Web et l'application d'intégration de WebView.

Version 1.2.0

Version 1.2.0

4 mars 2020

Publication d'androidx.webkit:webkit:1.2.0. Liste des commits de la version 1.2.0

Principales modifications depuis la version 1.1.0

  • Ajout de l'API ForceDark pour vérifier si les WebView doivent être affichés en mode sombre.

Version 1.2.0-rc01

19 février 2020

Publication d'androidx.webkit:webkit:1.2.0-rc01 sans aucune modification par rapport à la version 1.2.0-beta01. Liste des commits de la version 1.2.0-rc01

Version 1.2.0-beta01

5 février 2020

Publication d'androidx.webkit:webkit:1.2.0-beta01 sans aucune modification par rapport à la version 1.2.0-alpha01. Liste des commits de la version 1.2.0-beta01

Version 1.2.0-alpha01

18 décembre 2019

Publication d'androidx.webkit:webkit:1.2.0-alpha01. Liste des commits de la version 1.2.0-alpha01

Nouvelles fonctionnalités

  • L'API ForceDark permet de vérifier si les WebView doivent être affichés en mode sombre.

Version 1.1.0

Version 1.1.0

7 novembre 2019

Publication d'androidx.webkit:webkit:1.1.0. Liste des commits de la version 1.1.0.

Changements importants depuis la version 1.0.0

  • Les API Getter permettent de compléter setWebViewClient() et setWebChromeClient().
  • L'API ProxyController permet de définir un proxy de requête réseau pour les WebView d'une application.
  • L'API WebViewAssetLoader permet de simplifier le chargement des ressources, des fichiers et des éléments APK à partir du répertoire de données de l'application via l'interception des requêtes. Cela permet d'accéder aux ressources Web et locales sans désactiver CORS.
  • L'API TracingController permet de collecter des informations de traçage de WebView à des fins de débogage.
  • Les API RenderProcess permettent de gérer les services de moteur de rendu de WebView et de détecter les problèmes de comportement de contenu provoquant une perte de réactivité des moteurs de rendu de WebView.
  • Mise à jour des API existantes pour inclure les annotations de possibilité de valeur nulle (@NonNull, @Nullable) et de thread (@UiThread, @WorkerThread).

Version 1.1.0-rc01

9 octobre 2019

Publication d'androidx.webkit:webkit:1.1.0-rc01. Liste des commits de la version 1.1.0-rc01

Correction de bugs

  • Correction d'un problème qui provoquait le plantage de setWebViewRenderProcessClient() en cas de transmission d'un client nul.

Version 1.1.0-beta01

5 septembre 2019

Publication d'androidx.webkit:webkit:1.1.0-beta01. Les commits inclus dans cette version sont disponibles sur cette page.

Nouvelles fonctionnalités

  • Nouveau InternalStoragePathHandler dans WebViewAssetLoader permettant de charger des fichiers à partir du répertoire de données de l'application.

Modifications apportées à l'API

  • ProxyConfig#getProxyRules() renvoie désormais une liste non modifiable d'instances ProxyRule, qui est une nouvelle classe destinée à contenir un filtre de schéma et l'URL de proxy correspondante.

Correction de bugs

  • WebViewAssetLoader utilise par défaut un type MIME "text/plain" (plutôt que nul) lorsqu'il ne peut pas deviner le type MIME à partir du chemin d'accès au fichier.
  • WebViewAssetLoader ne génère plus une NullPointerException lors du chargement de fichiers contenant des caractères spéciaux dans le nom de leur chemin d'accès.

Version 1.1.0-alpha02

7 août 2019

Publication d'androidx.webkit:webkit:1.1.0-alpha02. Les commits inclus dans cette version sont disponibles sur cette page.

Nouvelles fonctionnalités

  • WebViewAssetLoader expose l'interface PathHandler pour permettre aux applications de créer une fonctionnalité personnalisée de gestion des chemins d'accès.

Modifications apportées à l'API

  • WebViewAssetLoader est désormais une classe finale, car il n'est pas destiné à être une sous-classe.
  • Les implémentations de WebViewAssetLoader#PathHandler sont désormais publiques et définitives.
  • Modifications mineures apportées aux noms des méthodes "ProxyConfig".
  • ProxyController : ajout de nouvelles méthodes addDirect() et addDirect(String) permettant une connexion directe aux serveurs. Suppression de la chaîne DIRECT.
  • Mise à jour des API existantes pour inclure les annotations de possibilité de valeur nulle (@NonNull, @Nullable) et de thread (@UiThread, @WorkerThread).

Version 1.1.0-alpha01

7 mai 2019

Publication d'androidx.webkit:webkit:1.1.0-alpha01. Les commits inclus dans cette version sont disponibles sur cette page.

Nouvelles fonctionnalités

  • Les API Getter permettent de compléter setWebViewClient() et setWebChromeClient().
  • L'API ProxyController permet de définir un proxy de requête réseau pour les WebView d'une application.
  • L'API AssetLoader simplifie le chargement des ressources et des éléments APK en interceptant les requêtes, ce qui permet d'accéder aux ressources Web sans désactiver CORS.
  • L'API TracingController permet de collecter des informations de traçage de WebView à des fins de débogage.
  • Les API RenderProcess permettent de gérer les services de moteur de rendu de WebView et de détecter les problèmes de comportement de contenu provoquant une perte de réactivité des moteurs de rendu de WebView.

Correction de bugs

  • Corrections mineures de la mise en forme de la documentation pour les API existantes.