Webkit
Dernière mise à jour | Version stable | Version finale | Version bêta | Version alpha |
---|---|---|---|---|
13 novembre 2024 | 1.9.0 | - | - | 1.13.0-alpha01 |
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.
Pour en savoir plus, consultez la documentation sur l'outil Issue Tracker.
Version 1.13
Version 1.13.0-alpha01
13 novembre 2024
Publication d'androidx.webkit:webkit:1.13.0-alpha01
. La version 1.13.0-alpha01 contient ces commits.
Nouvelles fonctionnalités
- Ajout d'une API de démarrage asynchrone
WebView
expérimentale. (I94b8a) - Préchargement d'URL dans Profile: introduction d'une nouvelle API dans Profile pour permettre aux développeurs de déclencher le préchargement d'URL. Effacement des préchargements: ajout d'une API permettant d'effacer les préchargements en cours. (I42c5c)
Modifications apportées à l'API
- Abandon de
WebView.startSafeBrowsing
. (If5626)
Version 1.12
Version 1.12.1
2 octobre 2024
Publication d'androidx.webkit:webkit:1.12.1
. La version 1.12.1 contient ces commits.
Correction de bugs
- Résolution du problème qui empêchait les API 1.12.0 d'être disponibles dans la version.
Version 1.12.0
18 septembre 2024
Publication d'androidx.webkit:webkit:1.12.0
. La version 1.12.0 contient ces commits.
Changements importants depuis la version 1.11.0
- Ajoutez une API à
WebSettingsCompat
pour activer/désactiver BackForwardCache pour ceWebSettings
. Cette API est expérimentale et peut être modifiée à l'avenir. (aosp/3111705) - Ajout d'une API à
WebSettingsCompat
pour contrôler le comportement de chargement spéculatif de cetteWebSettings
. Seul le préchargement est disponible pour le moment. Cette API est expérimentale et peut être modifiée à l'avenir. (I13962) - Ajout d'une nouvelle API pour activer l'authentification Web dans
WebView
. Les développeurs peuvent activer/désactiver les appelsWebAuthn
dans unWebView
pour leurs applications à l'aide deWebSettingsCompat#setWebAuthenticationSupport
. (I8187f)
Version 1.12.0-rc01
4 septembre 2024
Publication d'androidx.webkit:webkit:1.12.0-rc01
. Cette version ne contient aucune modification par rapport à la version 1.12.0-beta01
.
Version 1.12.0-beta01
21 août 2024
Publication d'androidx.webkit:webkit:1.12.0-beta01
. La version 1.12.0-beta01 contient ces commits.
Correction de bugs
- Suppression de la description manuelle de l'accès aux nouvelles API de la plate-forme, car cela se produit automatiquement via la modélisation d'API lorsque vous utilisez R8 avec AGP 7.3 ou version ultérieure (par exemple, R8 version 3.3) et pour tous les builds lorsque vous utilisez AGP 8.1 ou version ultérieure (par exemple, D8 version 8.1). Les clients qui n'utilisent pas AGP sont invités à passer à la version 8.1 de D8 ou ultérieure. Consultez cet article pour en savoir plus. (Ia60e0, b/345472586)
Version 1.12.0-alpha02
12 juin 2024
Publication d'androidx.webkit:webkit:1.12.0-alpha02
. La version 1.12.0-alpha02 contient ces commits.
Nouvelles fonctionnalités
- Ajoutez une API à
WebSettingsCompat
pour activer/désactiverBackForwardCache
. Cette API est expérimentale et peut être modifiée à l'avenir. (I64a38) - Ajout d'une API à
WebSettingsCompat
pour contrôler le comportement de chargement spéculatif de cette WebSettings. Seul le préchargement est disponible pour le moment. Cette API est expérimentale et peut être modifiée à l'avenir. (I13962)
Modifications apportées à l'API
- Certaines méthodes sont désormais documentées avec
@UiThread
, le cas échéant. (I6c7e0), (I44541) - Les méthodes thread-safe sont désormais documentées avec
@AnyThread
. (I70189) - Augmentation de
minSdkVersion
de 19 à 21. (Id7a43)
Version 1.12.0-alpha01
17 avril 2024
Publication d'androidx.webkit:webkit:1.12.0-alpha01
. La version 1.12.0-alpha01 contient ces commits.
Modifications apportées à l'API
- Ajout d'une nouvelle API pour activer l'authentification Web dans
WebView. Developers
. Vous pouvez activer/désactiver les appelsWebAuthn
dans unWebView
pour vos applications à l'aide deWebSettingsCompat#setWebAuthenticationSupport
. (I8187f)
Version 1.11
Version 1.11.0
1er mai 2024
Publication d'androidx.webkit:webkit:1.11.0
. La version 1.11.0 contient ces commits.
Changements importants depuis la version 1.10.0
- Autorisez les applications à contrôler la lecture audio dans
WebView
via les nouvelles APIsetAudioMuted
etisAudioMuted
, qui sont analogues à la désactivation du son d'un onglet dans Chrome. - Ajout de
URLUtilCompat
, qui permet d'analyser les en-têtesContent-Disposition
qui utilisent l'attribut de valeur encodéefilename*
, comme défini dans la RFC 6266. L'API de compatibilité expose également directement une méthode permettant d'analyser l'en-têteContent-Disposition
lorsque vous ne souhaitez pas qu'un nom de fichier suggéré soit basé sur l'URL et le type MIME.
Version 1.11.0-rc01
3 avril 2024
Publication d'androidx.webkit:webkit:1.11.0-rc01
. Cette version ne contient aucune modification par rapport à la version 1.11.0-beta01
.
Version 1.11.0-beta01
20 mars 2024
Publication d'androidx.webkit:webkit:1.11.0-beta01
sans 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
etisAudioMuted
pour couper le son (et le réactiver) deWebViews
. Cette méthode vous permet d'empêcher la lecture audio d'unWebView
. (Ie7a33)
Modifications apportées à l'API
URLUtilCompat
est défini comme final, car il ne doit pas être une sous-classe. (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é deURLUtilCompat
permet l'analyse des en-têtesContent-Disposition
qui utilisent l'attribut de valeur encodéefilename*
, tel que défini dans la norme RFC 6266. L'API de compatibilité expose également directement une méthode permettant d'analyser l'en-têteContent-Disposition
lorsque vous ne souhaitez pas qu'un nom de fichier suggéré soit basé sur l'URL et le type MIME. (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 dans 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. Cette option peut être activée pour toutes les origines et pour chaque origine.
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 par rapport à
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 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. Cette option peut être activée pour toutes les origines et pour chaque origine.
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 nouvelle API multiprofil pour les WebView.
- L'interface Profile propose différentes API à utiliser pour obtenir les données associées à ce profil, comme son nom, GeoLocationPermissions, ServiceWorkerController, CookieManager et WebStorage. Ces objets sont spécifiques au profil, et les informations ne sont pas partagées entre les différents profils de l'application.
- Le profil utilisé par une instance
WebView
peut être modifié à l'aide de la méthode WebViewCompat#setProfile et récupéré à l'aide de WebViewCompat#getProfile. - Le nouveau ProfileStore vous permet de gérer les profils disponibles dans votre application, y compris le profil par défaut.
- Les API WebView existantes telles que CookieManager#getInstance continueront de fonctionner sur le profil par défaut.
- Ajout d'une API permettant d'injecter et d'exécuter du code JavaScript avant le chargement de la page.
- L'API WebViewCompat#addDocumentStartJavascript permet aux applications d'injecter des scripts dans un
WebView
, qui sont garantis d'être exécutés avant l'exécution de tout script de page. L'API permet à l'application de spécifier une liste cible d'origines pour lesquelles le script doit être activé, ce qui garantit qu'il ne s'exécute que sur les pages prévues. Contrairement à WebView#evaluateJavascript, cette API permet d'exécuter des scripts dans des iFrames 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 une communication bidirectionnelle avec JavaScript sur la page.
- L'API WebViewCompat#addDocumentStartJavascript permet aux applications d'injecter des scripts dans un
- Ajout d'API pour modifier la manière 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 et les déclencheurs d'attribution sont enregistrés comme provenant de l'application elle-même ou du contenu Web dans la WebView. Cette méthode peut également être utilisée pour désactiver Attribution Reporting dans WebView. Nous avons également ajouté une nouvelle API
WebSettingsCompat#getAttributionRegistrationBehavior
pour obtenir le comportement actuel. - Pour en savoir plus, consultez la documentation sur la Privacy Sandbox.
- Nous avons lancé une nouvelle API WebSettingsCompat#setAttributionRegistrationBehavior qui permet aux développeurs de configurer si les sources et les déclencheurs d'attribution sont enregistrés comme provenant de l'application elle-même ou du contenu Web dans la WebView. Cette méthode peut également être utilisée pour désactiver Attribution Reporting dans WebView. Nous avons également ajouté une nouvelle API
- Ajout d'API pour remplacer les métadonnées de l'user-agent pour les indices client.
- Nous avons introduit une nouvelle API, WebSettingsCompat#setUserAgentMetadata, pour remplacer les métadonnées de l'user-agent de WebView utilisées pour renseigner les indices client de l'user-agent. Nous avons également ajouté une autre API, WebSettingsCompat#getUserAgentMetadata, pour obtenir les forçages d'user-agent actuels. Nous encourageons les applications à utiliser la nouvelle API pour définir les valeurs de forçage appropriées chaque fois qu'elles modifient la chaîne d'agent utilisateur par défaut à l'aide de WebSettings.setUserAgentString afin de s'assurer que les valeurs appropriées 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ésolution du problème de nullabilité de l'API des métadonnées de l'user-agent. Nous avons mis à jour la classe
BrandVersion
pour qu'elle utilise le modèle de compilateur, et nous avons rendu la possibilité de nullité des getters et des setters de la classeUserAgentMetadata
cohérente. (Ibf195) - Annoter
ProfileStore
,WebViewCompat#setProfile
etWebViewCompat.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 de disposer de sessions de navigation distinctes entre
WebViews
. Chaque profil dispose de ses propres données (par exemple, des cookies). Vous pouvez créer des profils, les attribuer à des instancesWebView
et les récupérer ultérieurement pour tout accès aux données. La classe singletonProfileStore
vous aide à gérer les profils en les créant ou en les supprimant à l'aide des APIgetOrCreateProfile
,getProfile
,getAllProfileNames
etdeleteProfile
. La classeProfile
dispose de différentes API à utiliser pour obtenir les données associées à ce profil, telles que son nom,GeoLocationPermissions
,ServiceWorkerController
,CookieManager
etWebStorage
. Par défaut, chaqueWebView
s'exécute avec le profil par défaut. Vous pouvez toutefois modifier ce paramètre à l'aide deWebViewCompat#setProfile
. En outre, le profil d'unWebView
peut être récupéré à l'aide deWebViewCompat#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 dansWebView
. Cette méthode peut également être utilisée pour désactiver Attribution Reporting dansWebView
. Nous avons également ajouté une nouvelle APIWebSettingsCompat#getAttributionRegistrationBehavior
pour obtenir le comportement actuel. Pour en savoir plus, consultez la documentation sur la Privacy Sandbox. (I661f2) - Ajoutez des API pour remplacer les métadonnées de l'user-agent. Nous avons introduit une nouvelle API
WebSettingsCompat#setUserAgentMetadata
pour remplacer les métadonnées de l'user-agent pour WebView, qui sont utilisées pour renseigner les indices client de l'user-agent. Nous avons également ajouté une autre APIWebSettingsCompat#getUserAgentMetadata
pour obtenir les forçages d'user-agent actuels. Nous encourageons les applications à utiliser la nouvelle API pour définir les valeurs de forçage appropriées au lieu de modifier l'user-agent. (I74500) - Ajoutez une API pour injecter du code JavaScript à exécuter lors du chargement de la page. L'API
WebViewCompat.addDocumentStartJavascript
permet aux applications d'injecter des scripts dans une WebView qui seront exécutés avant l'exécution de tout script de page. L'API permet à l'application de spécifier une liste cible d'origines pour lesquelles le script doit être activé, ce qui garantit qu'il ne s'exécute que sur les pages prévues. Contrairement àWebView.evaluateJavascript
, cette API permet d'exécuter des 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
- Ajout de la possibilité de transmettre
ArrayBuffer
viaWebMessagePortCompat#postMessage
,JavaScriptReplyProxy#postMessage
etWebViewCompat#postWebMessage
, de recevoirArrayBuffer
à partir de JavaScript viaWebMessagePortCompat
etWebMessageListener
, et de recevoir desArrayBuffer
transférables à partir de JavaScript viaWebMessagePortCompat
. (aosp/2596550, b/251152171)
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
- Ajout de la possibilité de transmettre
ArrayBuffer
viaWebMessagePortCompat#postMessage
,JsReplyProxy#postMessage
etWebViewCompat#postWebMessage
, de recevoirArrayBuffer
à partir de JavaScript viaWebMessagePortCompat
etWebMessageListener
, et de recevoir desArrayBuffer
transférables à partir de JavaScript viaWebMessagePortCompat
. Notez que cette API ne sera disponible qu'à partir de la version 116 deWebView
. (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 possibilité de faire glisser des images dans
WebView
. Vous pouvez autoriser vos utilisateurs à retirer des images deWebView
par glisser-déposer, en ajoutant le nouveauDropDataContentProvider
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 queWebView
utilisera pour le processus en cours. Comme pour toutes les méthodes surProcessGlobalConfig
, cette méthode doit être appelée avant l'instanciation de la première instance deWebView
. Cette méthode permet au framework Android d'ajuster les paramètresWebView
. Pour les applications à usage général, nous vous déconseillons d'utiliser cette méthode.
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, et
setDirectoryBasePaths()
accepte le fichier au lieu de la 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
- Ajoutez l'API
ProcessGlobalConfig#setDirectoryBasePath(String, String)
, qui peut être utilisée pour définir les répertoires de base queWebView
utilisera pour le processus en cours. (Ibd1a1, b/250553687)
Correction de bugs
- Correction d'une règle
ProGuard
non valide qui entraînait des erreurs de compilation lors de l'utilisation deDexGuard
(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 deWebView
par glisser-déposer, en ajoutant le nouveauDropDataContentProvider
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 d'une 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 dansCookieManager
, 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 deEnterpriseAuthenticationAppLinkPolicy
(si défini par l'administrateur) dansWebView
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êteX-Requested-With
aux origines de la liste d'autorisation. Généralement, l'en-tête est envoyé à chaque requête provenant deWebView
.
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
dansWebViewFeature.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 renvoieIllegalStateException
si elle est appelée plusieurs fois. Les objetsProcessGlobalConfig
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 chargerWebView
.WebView
comporte des paramètres de configuration globaux du processus qui ne peuvent pas être modifiés une fois queWebView
a été chargé (par exemple, le répertoire de donnéesWebView
). 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 chargeWebView
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 deWebView
. Les versions précédentes deWebView
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 APIgetCookieInfo
qui récupère tous les attributs de tous les cookies définis sur une URL spécifique. Cela diffère de l'APIgetCookie
existante dansCookieManager
, 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 deEnterpriseAuthenticationAppLinkPolicy
s'il est défini par l'administrateur dansWebView
. 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
surWebSettingsCompat
remplace les anciennes APIsetForceDark
etsetForceDarkStrategy
. 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éfinissantsetReverseBypassEnabled
surtrue
. 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()
surWebViewCompat
pour obtenir la valeur de l'en-tête de données du client X envoyée parWebView
. 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 remplacersetSafeBrowsingWhitelist()
. 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 remplacersetSafeBrowsingWhitelist()
. 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 unSet<String>
de règles d'origine autorisées (auparavant, uneList<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 deWebView
(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
dansWebViewAssetLoader
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'instancesProxyRule
, 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 uneNullPointerException
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'interfacePathHandler
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éthodesaddDirect()
etaddDirect(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()
etsetWebChromeClient()
. - 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.