Utiliser du contenu Web dans votre application Android

En tant que développeur, Android vous permet de tirer parti de la puissance du Web dans vos applications. Vous pouvez ainsi profiter de la flexibilité et de l'efficacité de l'affichage de certains types de contenus.

Vous pouvez ainsi intégrer facilement du contenu Web existant dans votre application Android native, par exemple pour afficher un flux d'actualités, des tutoriels interactifs, des annonces ou même un mini-jeu, sans avoir à tout créer à partir de zéro. Il s'agit d'une fenêtre sur Internet, depuis votre application. Il existe deux façons d'intégrer du contenu Web à votre application:

  • WebView: affiche le contenu Web que vous contrôlez en ligne lorsque vous souhaitez une grande flexibilité pour personnaliser ou mettre à jour l'UI.
  • Onglets personnalisés : expérience de navigation complète dans l'application, basée sur le navigateur par défaut de l'utilisateur (voir la compatibilité avec les navigateurs) lorsque les utilisateurs cliquent sur un lien et que vous souhaitez les conserver dans l'application au lieu de les rediriger vers un navigateur externe, avec une grande partie de l'expérience de navigation prête à l'emploi.
Application Android ouverte sur Google Play, avec la vue Web principale mise en surbrillance dans un cadre rouge. Onglet personnalisé ouvert sur la page Web Android pour les développeurs, mise en surbrillance dans un cadre rouge.
Figure 1. WebView (à gauche) et onglet personnalisé (à droite) en rouge.

Pourquoi intégrer du contenu Web ?

  • Efficacité: réutilisez le code existant de votre site Web. S'appuyer sur les technologies et contenus Web existants
  • Intégration: exploitez le contenu externe de fournisseurs tiers, tels que les médias et les annonces, dans votre application.
  • Flexibilité: mettez à jour le contenu de manière dynamique sans être limité aux UI prédéfinies ni sans publier de mises à jour d'applications.

Quand utiliser du contenu Web ?

Il existe trois principaux cas d'utilisation du Web dans votre application Android:

1. Intégrer du contenu Web dans votre application en tant que contenu principal ou secondaire: utilisez WebView

  • Affichez votre propre contenu Web en ligne en tant qu'expérience principale lorsque vous souhaitez bénéficier d'une grande flexibilité pour personnaliser ou mettre à jour l'UI.
  • Affichez d'autres contenus tels que des annonces, des conditions légales et des règlements, ou d'autres contenus tiers intégrés ou dans une fenêtre dans l'expérience de votre application.
Application Android ouverte sur Google Play, avec la vue Web principale mise en surbrillance dans un cadre rouge Application Android ouverte avec du texte d'accompagnement dans un cadre rouge.
Figure 2 : Contenu Web intégré à l'application avec des WebViews en tant que contenu principal (à gauche) et secondaire (à droite).

2. Navigation dans l'application à l'aide d'onglets personnalisés ou de WebView pour des cas d'utilisation plus avancés

  • Proposez une expérience de navigation complète dans l'application lorsque les utilisateurs cliquent sur un lien et que vous souhaitez les garder dans l'application au lieu de les rediriger vers un navigateur externe.
    • Remarque: Pour les appareils à grand écran tels que les tablettes et les appareils pliables, il existe des options supplémentaires pour aider les applications à exploiter l'espace supplémentaire:
    • Les applications peuvent ouvrir des liens Web en mode Écran partagé à l'aide de la fonctionnalité Lancer une expérience multifenêtre adjacente. Cela permet aux utilisateurs de faire plusieurs tâches à la fois entre votre application et un navigateur. OU
    • Les onglets personnalisés disposent d'une option de panneau latéral qui peut s'ouvrir dans la même tâche, mais à côté du contenu de votre application existante.
  • L'onglet personnalisé est alimenté par le navigateur par défaut de l'utilisateur, pour les navigateurs compatibles avec les onglets personnalisés.
    • Bien qu'il soit possible d'utiliser une WebView et de fournir une expérience de navigation dans l'application hautement personnalisable, nous vous recommandons d'utiliser des onglets personnalisés pour une expérience de navigation prête à l'emploi et une transition fluide lorsqu'un utilisateur souhaite ouvrir un lien Web dans le navigateur.
Page Web avec un lien intégré à l'application dans un encadré rouge à gauche et un navigateur intégré à l'application à droite.
Figure 3 Cliquez sur un lien dans l'application (à gauche) et ouvrez un navigateur dans l'application (à droite).

3. Flux de connexion ou d'authentification dans votre application

L'approche suggérée par Android consiste à créer vos flux de connexion ou d'authentification à l'aide du Gestionnaire d'identifiants. Si vous constatez que vous devez toujours utiliser le Web intégré pour ces expériences, suivez les conseils suivants:

  • Certaines applications utilisent des WebViews pour fournir des flux de connexion à leurs utilisateurs, y compris en utilisant un nom d'utilisateur et une clé d'accès (ou mot de passe) spécifiques à votre application. Cela permet aux développeurs d'unifier les flux d'authentification sur les différentes plates-formes.
  • Lorsque vous redirigez vers un fournisseur d'identité ou une expérience de connexion tiers, comme "Se connecter avec…", les onglets personnalisés sont la solution idéale. Le lancement d'onglets personnalisés garantit que les identifiants de l'utilisateur restent protégés et isolés du site tiers.

Pour en savoir plus sur l'utilisation des WebViews pour l'authentification, consultez la section Authentifier les utilisateurs avec WebView. Pour lancer un onglet personnalisé, consultez la section Présentation des onglets personnalisés Android.

Champ de connexion dans l'application avec WebView sur la gauche. Connexion tierce avec onglet personnalisé à droite.
Figure 4. Champ de connexion dans l'application (à gauche) et connexion tierce ouverte dans un onglet personnalisé (à droite).