Partager via


Xamarin.Essentials:Navigateur

La classe Browser permet à une application d’ouvrir un lien web dans le navigateur préféré du système optimisé ou le navigateur externe.

Démarrage

Pour commencer à utiliser cette API, lisez le guide de prise en main pour Xamarin.Essentials vous assurer que la bibliothèque est correctement installée et configurée dans vos projets.

Pour accéder aux fonctionnalités du navigateur, la configuration spécifique à la plateforme suivante est requise.

Si la version Android cible de votre projet est définie sur Android 11 (API R 30), vous devez mettre à jour votre manifeste Android avec des requêtes utilisées avec les nouvelles exigences de visibilité du package.

Ouvrez le fichier AndroidManifest.xml sous le dossier Propriétés, puis ajoutez ce qui suit dans le nœud manifeste :

<queries>
  <intent>
    <action android:name="android.intent.action.VIEW" />
    <data android:scheme="http"/>
  </intent>
  <intent>
    <action android:name="android.intent.action.VIEW" />
    <data android:scheme="https"/>
  </intent>
</queries>

Utilisation de Browser

Ajoutez une référence à Xamarin.Essentials votre classe :

using Xamarin.Essentials;

La fonctionnalité Navigateur fonctionne en appelant la méthode OpenAsync avec Uri et BrowserLaunchMode.


public class BrowserTest
{
    public async Task OpenBrowser(Uri uri)
    {
        try
        {
            await Browser.OpenAsync(uri, BrowserLaunchMode.SystemPreferred);
        }
        catch(Exception ex)
        {
            // An unexpected error occured. No browser may be installed on the device.
        }
    }
}

Cette méthode retourne des résultats une fois que le navigateur a été lancé et pas nécessairement quand il est fermé par l’utilisateur.

Personnalisation

Lorsque vous utilisez le navigateur préféré du système, plusieurs options de personnalisation sont disponibles pour iOS et Android. Celles-ci incluent un TitleMode (Android uniquement) et des options de couleur par défaut pour les Toolbar (iOS et Android) et Controls (iOS uniquement) qui s’affichent.

Ces options sont spécifiées à l’aide de BrowserLaunchOptions lors de l’appel à OpenAsync.

await Browser.OpenAsync(uri, new BrowserLaunchOptions
                {
                    LaunchMode = BrowserLaunchMode.SystemPreferred,
                    TitleMode = BrowserTitleMode.Show,
                    PreferredToolbarColor = Color.AliceBlue,
                    PreferredControlColor = Color.Violet
                });

Options du navigateur

Caractéristiques de mise en œuvre de la plateforme

Le Mode de lancement détermine la façon dont le navigateur est lancé :

Système par défaut

Les onglets personnalisés tenteront d’être utilisés pour charger l’URI et garder la connaissance de la navigation.

Externe

Un Intent sera utilisé pour demander l’ouverture de l’URI via le navigateur normal du système.

API

Retrouvez d’autres vidéos Xamarin sur Channel 9 et YouTube.