Tester les API et fonctionnalités à venir

Cet article explique comment basculer vers un canal en préversion de Microsoft Edge pour tester les API expérimentales qui se trouvent dans un package sdk de préversion WebView2.

Pour tester des API et fonctionnalités nouvelles ou à venir, basculez vers un canal d’aperçu Microsoft Edge plutôt que d’utiliser le runtime WebView2 stable. Le runtime Evergreen WebView2 est fréquemment mis à jour pour ajouter de nouvelles API et fonctionnalités. Ces mises à jour peuvent inclure des API qui ont été promues à partir d’un Kit de Experimental développement logiciel (SDK) WebView2 en préversion vers dans le Kit de développement logiciel (SDK Stable ) WebView2 Release. Certaines des mises à jour du runtime Evergreen WebView2 peuvent potentiellement interrompre votre application WebView2.

Nous vous recommandons de tester les API expérimentales à l’avance, avant qu’elles ne soient promues stables dans le Kit de développement logiciel (SDK) WebView2 Release, en basculant vers un canal de préversion de Microsoft Edge (qui inclut WebView2), pour vous assurer que votre application est compatible avec l’avant-compatible.

Voir aussi :

Utiliser un canal d’aperçu de WebView2 pour tester votre application par rapport aux API WebView2 expérimentales les plus récentes

Le runtime Evergreen WebView2 n’inclut pas d’API WebView2 expérimentales. Au lieu de cela, pour utiliser ces fonctionnalités expérimentales dans votre code WebView2, faites en sorte que votre application utilise la version de WebView2 qui se trouve dans un canal de préversion Microsoft Edge (Edge Beta, Edge Dev ou Edge Canary).

Le canal Canary est recommandé, car il offre les dernières API expérimentales.

Interaction entre le Kit de développement logiciel (SDK) de préversion WebView2 et les canaux de préversion Microsoft Edge

  • Kit de développement logiciel (SDK) préversion : Cette version du Kit de développement logiciel (SDK) WebView2 fournit des signatures de méthode pour les API expérimentales, qui vous permettent d’écrire du code à l’aide des API WebView2 expérimentales dans votre application.

  • Canaux de la préversion De Microsoft Edge : Ces canaux (Edge Beta, Edge Dev ou Edge Canary) contiennent les fichiers binaires Microsoft Edge nécessaires. Ces canaux permettent à votre application de s’exécuter et de s’afficher à l’aide des API expérimentales.

Pour plus d’informations sur la façon dont les versions du Kit de développement logiciel (SDK) interagissent avec le Runtime WebView2 et les canaux de préversion de Microsoft Edge, consultez Comprendre les différentes versions du Kit de développement logiciel (SDK) WebView2.

Test de compatibilité ascendante à l’aide du canal d’aperçu

Nous vous recommandons de tester les modifications à venir à l’aide de canaux en préversion pour garantir la compatibilité de votre application, en suivant les bonnes pratiques suivantes :

Téléchargement du Kit de développement logiciel (SDK) préversion et d’un canal d’aperçu

Pour utiliser des API expérimentales, téléchargez une version préliminaire du Kit de développement logiciel (SDK) WebView2 à partir du package Microsoft.Web.WebView2.

Les canaux d’aperçu de Microsoft Edge incluent le runtime WebView2 en préversion. Les canaux d’aperçu sont également appelés canaux Insider. Une fois installés, les canaux en préversion restent à jour ; la dernière version de chaque canal en préversion est automatiquement installée. Par exemple, cela signifie que le canal Canary se met à jour presque tous les jours. Pour télécharger un canal microsoft Edge en préversion (Canary, Dev ou Bêta), accédez à Devenir un Microsoft Edge Insider.

Pour déployer le canal en préversion sur plusieurs machines, consultez Guide pratique pour déployer des canaux en préversion ci-dessous.

Approches permettant à votre application d’utiliser un canal de navigateur spécifique

Lorsqu’un WebView2 est initialisé, il tente de trouver un runtime valide sur l’ordinateur à utiliser. Il peut s’agir du runtime WebView2, d’un canal d’aperçu de Microsoft Edge ou d’un emplacement spécifié qui contient des fichiers binaires version fixe. Pour plus d’informations sur les runtimes pris en charge, consultez Distribuer votre application et le runtime WebView2.

Il existe deux façons de faire en sorte que votre application WebView2 utilise un canal d’aperçu spécifique de Microsoft Edge :

Ces approches sont décrites ci-dessous.

Cette section s’applique à l’utilisation d’une API, d’un remplacement de Registre, d’une variable d’environnement ou d’une stratégie de groupe.

Si aucun dossier exécutable de navigateur spécifique n’est spécifié, WebView2 tente de charger un runtime à partir de l’un des emplacements par défaut connus. Par défaut, le chargeur WebView2 recherche les runtimes les plus stables à les moins stables (Canary), à l’aide du premier runtime trouvé.

WebView2 Runtime (Stable) ->  Edge Beta -> Edge Dev -> Edge Canary

Vous pouvez inverser l’ordre de recherche par défaut en définissant l’API ChannelSearchKind sur LeastStableou en définissant la stratégie, la ChannelSearchKind clé de Registre ou la variable d’environnement sur 1. L’inversion de l’ordre de recherche rend la recherche du chargeur WebView2 de la moins stable (Canary) à la plus stable :

Edge Canary -> Edge Dev -> Edge Beta -> WebView2 Runtime (Stable)

Cette opération doit être effectuée avant l’initialisation du contrôle WebView2.

Si vous avez besoin d’un ordre plus spécifique, consultez Comment utiliser ChannelSearchKind pour vous assurer qu’un canal particulier est utilisé.

Par défaut, la CoreWebView2EnvironmentOptions.ChannelSearchKind propriété est CoreWebView2ChannelSearchKind.MostStable (une valeur enum). Au lieu de cela, inversez l’ordre de recherche en affectant à la propriété la CoreWebView2EnvironmentOptions.ChannelSearchKind valeur CoreWebView2ChannelSearchKind.LeastStable.

.NET:

WinRT :

Win32 :

Comment utiliser ChannelSearchKind pour s’assurer qu’un canal particulier est utilisé

Lorsque vous utilisez ChannelSearchKind, voici comment vous pouvez vous assurer qu’un certain canal de navigateur en préversion est utilisé lorsque plusieurs canaux de navigateur en préversion sont installés.

En plus d’inverser l’ordre de recherche de canal, vous pouvez modifier l’ensemble des canaux de mise en production à inclure dans la recherche, afin de fournir un contrôle supplémentaire sur la sélection du canal. Le chargeur recherche les canaux sur l’appareil dans l’ordre spécifié par le type de recherche de canal, mais il prend uniquement en compte les canaux qui se trouvent dans l’ensemble de canaux de mise en production spécifié.

Cette option est utile si vous souhaitez cibler un canal particulier, au lieu de choisir simplement le canal le plus ou le moins stable. Par défaut, les canaux de mise en production incluent tous les canaux : Stable (0), Bêta (1), Dev (2) et Canary (3).

Exemple :

Channel Search Kind: 1 (Least Stable)
Release Channels: 0 (Stable), 1 (Beta)

Cet exemple de paramètre permet au chargeur d’essayer d’exécuter l’application avec Edge Beta si Edge Beta est installé sur l’appareil, et de revenir à l’utilisation du runtime WebView2 stable.

Les canaux de mise en production peuvent également être définis via l’API, la clé de Registre, la variable d’environnement ou la stratégie de groupe.

Par défaut, le chargeur prend en compte tous les canaux de mise en production. Définissez ReleaseChannels sur un masque des canaux que vous souhaitez que le chargeur recherche.

.NET:

WinRT :

Win32 :

Définition du dossier exécutable du navigateur (pour les tests locaux)

Une autre approche consiste à utiliser un dossier exécutable de navigateur. Dans cette approche, vous spécifiez un dossier qui contient des fichiers binaires d’exécution. Ce dossier peut se trouver à l’un des emplacements suivants :

  • Emplacement installé du runtime WebView2.
  • Un canal en préversion de Microsoft Edge.
  • Dossier contenant les fichiers binaires version fixe que vous avez déployés sur l’ordinateur vous-même.

Si vous définissez le dossier exécutable du navigateur sur un canal d’aperçu spécifique de Microsoft Edge, vous devez mettre à jour l’emplacement lorsque ce canal d’aperçu sera mis à jour vers une version plus récente. Cela est dû au fait que l’emplacement inclut le numéro de version dans son chemin d’accès. Par conséquent, nous vous recommandons d’utiliser cette approche uniquement pour les tests locaux.

Transmettez le chemin d’accès au dossier exécutable du navigateur lors de la création de l’environnement à l’aide des API suivantes.

.NET (WPF) :

.NET (WinForms) :

WinRT :

Win32 :

Quand le nouveau runtime est récupéré

Si vous utilisez une variable d’environnement, une clé de Registre ou une stratégie de groupe, elles sont appliquées uniquement aux nouveaux processus de navigateur WebView2 Runtime créés ; elles ne s’appliquent pas aux processus du navigateur Runtime WebView2 qui sont déjà en cours d’exécution. Par exemple, si vous avez déjà un WebView2 avec un dossier de données utilisateur spécifique (et par conséquent un processus de navigateur correspondant) et que ChannelSearchKind vous modifiez avant de tenter de créer un nouveau WebView2 à l’aide de ce même dossier de données utilisateur, il utilise le processus de navigateur WebView2 Runtime existant et ne recherche pas un autre runtime.

Pour vous assurer que tous les processus utilisent la variable d’environnement, la clé de Registre ou la stratégie de groupe, vous devez effectuer l’une des opérations suivantes :

  • Redémarrez l’application.
  • Recréez tous les contrôles WebView2 qui partagent un dossier de données utilisateur.
  • Create un nouveau webView2 qui a un dossier de données utilisateur différent de tout autre contrôle WebView2 en cours d’exécution.

Comment définir une variable d’environnement

Vous pouvez utiliser plusieurs approches pour définir des variables d’environnement :

  • Définition de variables d’environnement à l’aide d’API pour une application spécifique.
  • Définition de variables d’environnement globales pour toutes les applications.

Ces approches sont décrites ci-dessous.

Définition de variables d’environnement à l’aide d’API, pour une application spécifique

Vous pouvez définir des variables d’environnement à l’aide de SetEnvironmentVariable. L’appel de cette fonction à partir de votre application hôte limite l’étendue de la variable d’environnement à votre application hôte et aux contrôles WebView2 qu’elle crée, et n’affecte pas les autres applications sur le système.

Définition de variables d’environnement globales pour toutes les applications

Vous pouvez définir des variables d’environnement à l’aide de l’interface utilisateur du système Windows. Cette approche rend l’étendue de la variable d’environnement globale pour l’utilisateur ou le système actuel, et affecte toutes les applications qui créent des contrôles WebView2.

  1. Dans la barre de recherche Windows, entrez « environnement », puis sélectionnez Modifier les variables d’environnement système :

    Utilisation de la barre de recherche Windows pour trouver où modifier les variables d’environnement

    La boîte de dialogue Propriétés système s’ouvre.

  2. Sélectionnez l’onglet Avancé , puis cliquez sur le bouton Variables d’environnement :

    Bouton Variables d’environnement dans la boîte de dialogue Propriétés système

    La boîte de dialogue Variables d’environnement s’ouvre.

  3. Dans la section Variables utilisateur en haut, cliquez sur le bouton Nouveau . La boîte de dialogue Nouvelle variable utilisateur s’ouvre .

  4. Dans la zone de texte Nom de la variable , entrez le nom de la variable d’environnement, ou WEBVIEW2_CHANNEL_SEARCH_KINDWEBVIEW2_BROWSER_EXECUTABLE_FOLDER.

  5. Dans la zone de texte Valeur de variable, effectuez l’une des opérations suivantes :

    • Si vous définissez le ChannelSearchKind, entrez 1 pour inverser l’ordre de recherche par rapport à la valeur par défaut, pour utiliser d’abord les canaux d’aperçu (Canary, Bêta, puis Dev), puis le Runtime WebView2. Toute valeur autre que 1 entraîne l’utilisation de l’ordre de recherche par défaut (Runtime WebView2, Edge Dev, Edge Beta, puis Edge Canary).

    • Si vous définissez le BrowserExecutableFolder, entrez le chemin d’accès à votre canal de navigateur préféré ou aux fichiers binaires de version fixe.

  6. Cliquez sur les boutons OK pour fermer les boîtes de dialogue.

Comment déployer des canaux en préversion

Pour déployer les canaux en préversion de Microsoft Edge sur plusieurs machines, effectuez l’une des opérations suivantes :

  • Option 1 : installer manuellement les canaux en préversion sur les machines.

  • Option 2 : déployer par programmation des canaux en préversion via des points de terminaison d’API.

Ces options sont expliquées ci-dessous.

Option 1 : installer manuellement les canaux d’aperçu sur les machines

Les canaux d’aperçu peuvent être installés manuellement (manuellement ou via un script personnalisé déployé) via les liens d’entreprise suivants :

Canal Liens
Canary Télécharger
Dev Télécharger
Bêta Télécharger

L’installation manuelle ne doit être effectuée qu’une seule fois par machine. Les canaux de préversion étant persistants, ils sont automatiquement mis à jour lorsque des versions plus récentes sont disponibles.

Option 2 : déployer par programmation des canaux en préversion via des points de terminaison d’API

Dans le code de votre application, écrivez votre propre logique personnalisée pour déployer la dernière version d’un canal en préversion de Microsoft Edge comme suit :

  1. Appelez le point de terminaison d’API suivant qui correspond au canal en préversion que vous souhaitez déployer :

    Canal Liens
    Canary https://edgeupdates.microsoft.com/api/products/canary
    Lien MSI
    Dev https://edgeupdates.microsoft.com/api/products/dev
    Bêta https://edgeupdates.microsoft.com/api/products/beta

    Le canal Canary a un lien MSI distinct. Les canaux Dev et Beta contiennent des liens MSI.

  2. Récupérez le dernier package sur l’appareil.

  3. Installez le package.

Voir aussi