Webkit
Dernière mise à jour | Version stable | Version finale | Version bêta | Version alpha |
---|---|---|---|---|
8 février 2023 | 1.6.0 | - | - | 1.7.0-alpha02 |
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.6.0" }
Kotlin
dependencies { implementation("androidx.webkit:webkit:1.6.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.7
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.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.