Présentation des onglets personnalisés Android

Les onglets personnalisés sont une fonctionnalité des navigateurs Android qui permet aux développeurs d'applications d'ajouter une expérience de navigateur personnalisée directement dans leur application.

Le chargement de contenu Web fait partie des applications mobiles depuis les débuts des smartphones, mais les options plus anciennes peuvent poser des défis aux développeurs. Le lancement du navigateur est un changement de contexte lourd qui n'est pas personnalisable pour les utilisateurs. En revanche, les WebViews ne sont pas compatibles avec toutes les fonctionnalités de la plate-forme Web, ne partagent pas d'état avec le navigateur et entraînent des frais de maintenance.

Les onglets personnalisés permettent aux utilisateurs de rester dans l'application pendant la navigation, ce qui augmente l'engagement et réduit le risque d'abandon de l'application. Pour ce faire, ils sont alimentés directement par le navigateur préféré de l'utilisateur et partagent automatiquement l'état et les fonctionnalités qu'il propose. Vous n'avez pas besoin d'écrire de code personnalisé pour gérer les requêtes, les autorisations ou les magasins de cookies.

À quoi servent les onglets personnalisés ?

En utilisant un onglet personnalisé, votre contenu Web se charge dans le moteur de rendu utilisé par le navigateur préféré de l'utilisateur. Toutes les API ou fonctionnalités de la plate-forme Web y sont disponibles, et le sont également dans votre onglet personnalisé. Sa session de navigation, ses mots de passe enregistrés, ses modes de paiement et ses adresses s'affichent comme il en a l'habitude.

Que puis-je personnaliser dans un onglet personnalisé ?

Oui, beaucoup. Les onglets personnalisés vous permettent de contrôler de manière précise une grande partie de l'interface utilisateur et du navigateur. Dans votre application, vous lancez un onglet personnalisé à l'aide d'un intent. Lorsque cet intent est appelé, vous pouvez ajouter un certain nombre d'attributs à CustomTabIntent pour obtenir l'expérience exacte que vous souhaitez. Voici quelques personnalisations que vous pouvez ajouter:

  • Animations d'entrée et de sortie personnalisées pour correspondre au reste de votre application
  • Modifier la couleur de la barre d'outils pour l'adapter au branding de votre application
  • Cohérence des couleurs qui peut rester dans votre application, même si les utilisateurs basculent entre les thèmes clair et sombre
  • Actions et entrées personnalisées dans la barre d'outils et les menus du navigateur
  • Contrôlez la hauteur de lancement de l'onglet personnalisé, ce qui vous permet de diffuser vos vidéos tout en interagissant avec votre boutique en ligne, par exemple.

De plus, les utilisateurs peuvent réduire un onglet personnalisé pour interagir avec l'application sous-jacente et le restaurer à tout moment sans perdre leur progression pour reprendre leur parcours. Les utilisateurs peuvent ainsi fermer l'onglet personnalisé et effectuer plusieurs tâches à la fois entre le Web et l'application native. Cette fonctionnalité est activée par défaut pour les onglets personnalisés.

C'est loin de tout. Les onglets personnalisés sont très puissants et sont en cours de développement. Chaque navigateur doit prendre en charge ces fonctionnalités à mesure qu'elles deviennent disponibles. Bien que presque tous disposent d'un niveau d'assistance, il est important de savoir ce qui peut ou non être disponible dans les navigateurs de vos utilisateurs. Reportez-vous au tableau de comparaison des fonctionnalités pour vérifier rapidement la disponibilité des différentes fonctionnalités sur les navigateurs Android courants.

Vous pouvez tester cela maintenant avec notre exemple sur GitHub.

Quand utiliser des onglets personnalisés ?

Il n'existe pas de méthode "correcte" unique pour charger du contenu Web. Dans certains cas, WebView est la technologie appropriée. Par exemple, si vous hébergez exclusivement votre propre contenu dans votre application ou si vous devez injecter du code JavaScript directement à partir de votre application. Si votre application redirige les utilisateurs vers des URL externes à des domaines, l'état partagé intégré dans les onglets personnalisés signifie probablement qu'ils constituent un meilleur choix. Voici les autres avantages des onglets personnalisés:

  1. Sécurité: les onglets personnalisés utilisent la navigation sécurisée de Google pour protéger l'utilisateur et l'appareil contre les sites dangereux.
  2. Optimisation des performances :
    1. Préchauffage du navigateur en arrière-plan, tout en évitant de voler des ressources à l'application.
    2. Accélérez le temps de chargement de la page en chargeant les URL de manière spéculative à l'avance.
  3. Gestion du cycle de vie: les applications qui lancent un onglet personnalisé ne seront pas supprimées par le système pendant l'utilisation des onglets. Leur importance est élevée au niveau "premier plan".
  4. Un modèle de boîte à cookies et d'autorisations partagés afin que les utilisateurs n'aient pas à se connecter aux sites auxquels ils sont déjà connectés ni à réaccorder les autorisations qu'ils ont déjà accordées.
  5. Les fonctionnalités du navigateur, comme la saisie automatique pour une meilleure saisie des formulaires, sont prêtes à l'emploi.
  6. Les utilisateurs peuvent revenir à l'application à l'aide d'un bouton Retour intégré.

Onglet personnalisé par rapport à l'activité Web fiable

Les activités Web fiables étendent le protocole des onglets personnalisés et partagent la plupart de ses avantages. Toutefois, au lieu de fournir une UI personnalisée, elle permet aux développeurs d'ouvrir un onglet de navigateur sans aucune UI. Elle est recommandée aux développeurs qui souhaitent ouvrir leur propre progressive web app, en plein écran, dans leur propre application Android.

Où les onglets personnalisés sont-ils disponibles ?

Les onglets personnalisés sont une fonctionnalité compatible avec les navigateurs sur la plate-forme Android. Il a été initialement introduit par Chrome, dans la version 45. Le protocole est compatible avec la plupart des navigateurs Android.

Nous attendons vos commentaires, questions et suggestions sur ce projet. Nous vous invitons donc à signaler les problèmes sur crbug.com et à poser vos questions sur Twitter à @ChromiumDev.

Premiers pas

En plus de la démonstration GitHub, il existe un certain nombre de guides pour vous aider à vous familiariser avec les onglets personnalisés.

Pour toute question, consultez la balise chrome-custom-tabs sur StackOverflow.