Libérez tout le potentiel de votre Progressive Web App (PWA) en maîtrisant les modes d'affichage du manifeste. Ce guide complet explore les diverses options d'affichage et leur impact sur l'expérience utilisateur sur différentes plateformes.
Affichage du manifeste PWA frontend : Configuration avancée du mode d'affichage
Les Progressive Web Apps (PWA) révolutionnent la manière dont les utilisateurs interagissent avec le contenu web. En tirant parti des technologies web modernes, les PWA offrent des expériences de type application directement via le navigateur, comblant ainsi le fossé entre les sites web traditionnels et les applications natives. Au cœur d'une PWA se trouve le manifeste de l'application web, un fichier JSON qui fournit des informations cruciales sur l'application, y compris son nom, ses icônes et, plus important encore, son mode d'affichage. Cet article explore en profondeur la configuration avancée de la propriété de mode d'affichage dans le manifeste PWA, en examinant les différentes options et leur impact sur l'expérience utilisateur.
Comprendre le manifeste de l'application web
Avant de nous plonger dans les subtilités des modes d'affichage, récapitulons brièvement le rôle du manifeste de l'application web. Le fichier manifeste, généralement nommé manifest.json ou manifest.webmanifest, est un simple fichier JSON qui contient des métadonnées sur votre PWA. Ces métadonnées sont utilisées par le navigateur pour déterminer comment l'application doit être installée et affichée. Les propriétés clés du manifeste incluent :
- name : Le nom de votre PWA, tel qu'il est affiché à l'utilisateur.
- short_name : Une version plus courte du nom, utilisée lorsque l'espace est limité.
- icons : Un tableau d'icônes de différentes tailles et formats, utilisées pour l'icône de l'écran d'accueil de l'application, l'écran de démarrage et d'autres éléments de l'interface utilisateur.
- start_url : L'URL qui est chargée lorsque la PWA est lancée.
- display : C'est le sujet de notre article – le mode d'affichage détermine comment la PWA est présentée à l'utilisateur.
- background_color : La couleur de fond utilisée pour l'écran de démarrage.
- theme_color : La couleur de thème utilisée par le navigateur pour la barre de titre et d'autres éléments de l'interface utilisateur.
- description : Une brève description de la PWA.
- screenshots : Un tableau de captures d'écran à afficher dans la bannière d'installation de l'application.
- categories : Un tableau de catégories auxquelles la PWA appartient (par exemple, "livres", "shopping", "productivité").
- prefer_related_applications : Valeur booléenne indiquant si l'application spécifique à la plateforme doit être préférée à l'application web.
- related_applications : Tableau d'applications spécifiques à la plateforme qui sont considérées comme des alternatives pour l'installation.
Le fichier manifeste est lié à votre PWA à l'aide d'une balise <link> dans la section <head> de votre HTML :
<link rel="manifest" href="manifest.json">
Exploration des options de mode d'affichage
La propriété display dans le manifeste offre quatre modes d'affichage distincts, chacun influençant la manière dont la PWA est présentée à l'utilisateur :
- fullscreen : La PWA occupe la totalité de l'écran, masquant les éléments de l'interface utilisateur du navigateur comme la barre d'adresse et les boutons de navigation.
- standalone : La PWA s'exécute dans sa propre fenêtre, distincte du navigateur, avec une barre de titre et sans les éléments de l'interface utilisateur du navigateur. C'est le mode d'affichage le plus courant et souvent le plus souhaité pour une PWA.
- minimal-ui : Similaire à standalone, mais inclut des éléments minimaux de l'interface utilisateur du navigateur, tels que les boutons Précédent et Suivant, et un bouton de rafraîchissement.
- browser : La PWA s'ouvre dans un onglet ou une fenêtre de navigateur standard, affichant l'interface utilisateur complète du navigateur.
Examinons chacun de ces modes en détail.
1. Le mode fullscreen
Le mode fullscreen offre l'expérience la plus immersive, maximisant l'espace d'écran pour votre PWA. C'est idéal pour les jeux, les lecteurs vidéo ou les applications où un environnement sans distraction est crucial.
Pour configurer le mode fullscreen, il suffit de définir la propriété display dans votre manifeste sur "fullscreen" :
{
"name": "Ma PWA en plein écran",
"display": "fullscreen",
"start_url": "/",
"icons": [
{
"src": "icon.png",
"sizes": "192x192",
"type": "image/png"
}
]
}
Considérations pour le mode plein écran :
- Expérience utilisateur : Assurez-vous que votre PWA offre une navigation claire et intuitive dans l'environnement plein écran. Les utilisateurs doivent pouvoir quitter ou revenir facilement aux écrans précédents.
- Accessibilité : Pensez aux utilisateurs en situation de handicap qui peuvent dépendre des éléments de l'interface utilisateur du navigateur pour la navigation. Fournissez des méthodes de navigation alternatives au sein de votre PWA.
- Support des plateformes : Bien que largement pris en charge, le comportement du mode plein écran peut varier légèrement entre les différents navigateurs et systèmes d'exploitation. Des tests approfondis sont essentiels.
- Mise à l'échelle du contenu : Assurez-vous que votre contenu s'adapte correctement aux différentes tailles d'écran et formats d'image lors de l'utilisation du mode plein écran.
Exemple : Une application de jeu ou un service de streaming vidéo dédié bénéficierait grandement du mode immersif fullscreen, permettant aux utilisateurs de se concentrer sur le contenu sans distractions.
2. Le mode standalone
Le mode standalone offre une approche équilibrée, fournissant une expérience de type application sans masquer complètement l'interface utilisateur du navigateur. La PWA s'exécute dans sa propre fenêtre de premier niveau, séparée du navigateur, et possède sa propre icône d'application dans le lanceur d'applications du système d'exploitation. C'est souvent le mode préféré pour la plupart des PWA.
Pour configurer le mode standalone, définissez la propriété display sur "standalone" :
{
"name": "Ma PWA Standalone",
"display": "standalone",
"start_url": "/",
"icons": [
{
"src": "icon.png",
"sizes": "192x192",
"type": "image/png"
}
]
}
Avantages du mode standalone :
- Expérience de type application : Offre une expérience visuellement distincte d'un site web classique, améliorant l'engagement de l'utilisateur.
- Intégration à l'écran d'accueil : Permet aux utilisateurs d'installer la PWA sur leur écran d'accueil, la rendant facilement accessible.
- Capacités hors ligne : Les PWA en mode standalone peuvent utiliser les service workers pour fournir des fonctionnalités hors ligne, améliorant ainsi la fiabilité.
Exemple : Une application de e-commerce ou un client de réseau social fonctionnerait bien en mode standalone, offrant aux utilisateurs une expérience fluide similaire à celle des applications natives.
3. Le mode minimal-ui
Le mode minimal-ui est similaire à standalone mais inclut un ensemble minimal d'éléments d'interface utilisateur du navigateur, généralement les boutons Précédent et Suivant, ainsi qu'un bouton de rafraîchissement. Ce mode offre une expérience légèrement moins immersive que standalone mais peut être utile pour les PWA qui dépendent de la navigation du navigateur.
Pour configurer le mode minimal-ui, définissez la propriété display sur "minimal-ui" :
{
"name": "Ma PWA en UI minimale",
"display": "minimal-ui",
"start_url": "/",
"icons": [
{
"src": "icon.png",
"sizes": "192x192",
"type": "image/png"
}
]
}
Cas d'utilisation du mode minimal-ui :
- Dépendance à la navigation du navigateur : Lorsque votre PWA dépend fortement des boutons Précédent et Suivant du navigateur,
minimal-uipeut offrir une expérience plus familière aux utilisateurs. - Intégration d'une application web héritée : Si vous migrez une application web existante vers une PWA,
minimal-uipeut faciliter la transition en fournissant des commandes de navigateur familières.
Exemple : Une application d'édition de documents ou un formulaire web complexe pourrait bénéficier du mode minimal-ui, permettant aux utilisateurs de naviguer facilement entre les différentes sections à l'aide des boutons Précédent et Suivant du navigateur.
4. Le mode browser
Le mode browser est le mode d'affichage par défaut si la propriété display n'est pas spécifiée dans le manifeste. Dans ce mode, la PWA s'ouvre dans un onglet ou une fenêtre de navigateur standard, affichant l'interface utilisateur complète du navigateur, y compris la barre d'adresse, les boutons de navigation et les favoris. Ce mode est essentiellement équivalent à un site web classique.
Pour configurer explicitement le mode browser, définissez la propriété display sur "browser" :
{
"name": "Ma PWA en mode navigateur",
"display": "browser",
"start_url": "/",
"icons": [
{
"src": "icon.png",
"sizes": "192x192",
"type": "image/png"
}
]
}
Quand utiliser le mode navigateur :
- Applications web simples : Pour les applications web simples qui ne nécessitent pas une expérience de type application, le mode
browserpeut être suffisant. - Amélioration progressive : Vous pouvez utiliser le mode
browsercomme solution de repli pour les navigateurs plus anciens qui ne prennent pas entièrement en charge les fonctionnalités des PWA.
Exemple : Un simple blog ou un site web statique pourrait utiliser le mode browser, car il ne nécessite aucune fonctionnalité spéciale de type application.
Définir un mode d'affichage de repli
Il est important de noter que tous les navigateurs ne prennent pas entièrement en charge tous les modes d'affichage. Pour garantir une expérience cohérente sur différentes plateformes, vous pouvez spécifier un mode d'affichage de repli à l'aide de la propriété display_override dans le manifeste.
La propriété display_override est un tableau de modes d'affichage, classés par ordre de préférence. Le navigateur tentera d'utiliser le premier mode d'affichage du tableau qu'il prend en charge. Si aucun des modes spécifiés n'est pris en charge, le navigateur se rabattra sur son mode d'affichage par défaut (généralement browser).
Par exemple, pour préférer le mode standalone mais se replier sur minimal-ui puis browser, vous configureriez le manifeste comme suit :
{
"name": "Ma PWA avec repli",
"display": "standalone",
"display_override": ["standalone", "minimal-ui", "browser"],
"start_url": "/",
"icons": [
{
"src": "icon.png",
"sizes": "192x192",
"type": "image/png"
}
]
}
Au-delà des modes d'affichage de base : Gérer les cas limites et les différences de plateforme
Bien que les modes d'affichage principaux offrent un grand degré de contrôle, il est primordial de comprendre comment ils interagissent avec diverses plateformes et cas limites pour créer des expériences utilisateur robustes et cohérentes. Voici quelques considérations avancées :
1. Manifestes spécifiques à la plateforme
Dans certains scénarios, vous pourriez avoir besoin de configurations légèrement différentes en fonction du système d'exploitation (OS) de l'utilisateur. Par exemple, vous pourriez vouloir une taille d'icône distincte pour iOS par rapport à Android. Bien qu'un seul manifeste suffise souvent, pour des expériences très personnalisées, un chargement conditionnel du manifeste peut être utilisé.
Cela peut être réalisé en utilisant une logique côté serveur ou du JavaScript pour détecter l'OS de l'utilisateur et servir le fichier manifeste approprié. Soyez conscient de la complexité accrue que cette approche introduit.
2. Gestion de l'orientation de l'écran
Les PWA ont la possibilité de définir leur orientation d'écran préférée à l'aide de la propriété orientation dans le manifeste. Par exemple, verrouiller une application en mode paysage peut améliorer les expériences de jeu ou de consommation de médias.
Cependant, n'oubliez pas que les utilisateurs ont finalement le contrôle de l'orientation de leur appareil. Concevez votre PWA pour gérer gracieusement les changements d'orientation, en veillant à ce que le contenu reste lisible et fonctionnel quelle que soit la position de l'appareil.
3. Personnalisation de l'écran de démarrage
L'écran de démarrage, affiché brièvement pendant le chargement de la PWA, offre l'occasion de créer une première impression positive. Personnalisez la couleur de fond (background_color) et la couleur de thème (theme_color) de l'écran de démarrage pour qu'elles correspondent à votre identité de marque.
Assurez-vous que les couleurs choisies offrent un contraste suffisant avec l'icône de l'application pour maximiser la visibilité et la lisibilité. Envisagez de tester sur différents appareils pour vérifier que l'écran de démarrage s'affiche correctement.
4. Considérations de sécurité
Les PWA, comme les sites web traditionnels, doivent toujours être servies via HTTPS. Cela sécurise la connexion entre le navigateur de l'utilisateur et le serveur, protégeant les données sensibles contre l'espionnage. De plus, l'utilisation d'un contexte sécurisé est une condition préalable à l'activation des service workers, une technologie essentielle qui sous-tend les fonctionnalités des PWA.
Vérifiez que le certificat SSL/TLS de votre serveur est valide et correctement configuré. Mettez régulièrement à jour vos protocoles de sécurité pour atténuer les vulnérabilités potentielles.
5. Tests sur différents appareils et navigateurs
Compte tenu de la diversité des appareils et des navigateurs utilisés dans le monde, des tests approfondis sont cruciaux pour garantir que votre PWA fonctionne correctement sur toutes les plateformes cibles. Utilisez les outils de développement des navigateurs pour simuler différentes tailles d'écran et conditions de réseau.
Utilisez des services de test multi-navigateurs pour automatiser les tests sur un large éventail de navigateurs et de systèmes d'exploitation. Recueillez les commentaires des utilisateurs sur différents appareils pour identifier et résoudre les problèmes de compatibilité.
6. Bonnes pratiques d'accessibilité
L'accessibilité doit être une considération centrale lors du développement de toute application web, y compris les PWA. Respectez les directives d'accessibilité du web (WCAG) pour garantir que votre PWA est utilisable par les personnes en situation de handicap. Fournissez un texte alternatif pour les images, utilisez des éléments HTML sémantiques et assurez un contraste de couleur suffisant.
Testez votre PWA avec des technologies d'assistance, telles que les lecteurs d'écran, pour identifier et résoudre les obstacles à l'accessibilité. En mode plein écran, assurez-vous que des méthodes de navigation alternatives sont fournies.
Exemples pratiques du monde entier
Explorons quelques exemples concrets de la manière dont différentes entreprises tirent parti des modes d'affichage des PWA pour améliorer l'expérience utilisateur :
- Starbucks (Monde) : La PWA de Starbucks utilise le mode
standalonepour offrir une expérience de commande simplifiée, similaire à leur application mobile native. Cela permet aux utilisateurs du monde entier de passer rapidement des commandes et de suivre leurs points de fidélité. - Twitter Lite (Monde) : Twitter Lite, conçue pour les utilisateurs dans des régions où les données sont sensibles, utilise le mode
standalonepour offrir une expérience de médias sociaux efficace et légère. Cela permet aux utilisateurs dans les zones à faible bande passante de rester connectés. - Flipkart Lite (Inde) : Flipkart Lite, une PWA de e-commerce, tire parti du mode
standalonepour offrir une expérience d'achat axée sur le mobile aux utilisateurs en Inde. Cela permet aux utilisateurs disposant d'appareils plus anciens et de connexions Internet plus lentes de parcourir et d'acheter facilement des produits. - AliExpress (Chine, Monde) : La PWA d'AliExpress est disponible sur diverses plateformes et tire parti des service workers pour offrir une expérience plus rapide à travers le monde.
Idées concrètes et bonnes pratiques
Pour tirer parti efficacement des modes d'affichage du manifeste PWA, tenez compte des idées concrètes et des bonnes pratiques suivantes :
- Donnez la priorité à l'expérience utilisateur : Choisissez le mode d'affichage qui correspond le mieux à l'objectif de votre PWA et à votre public cible.
- Fournissez une navigation claire : Assurez une navigation intuitive au sein de votre PWA, en particulier en mode
fullscreen. - Testez de manière approfondie : Testez votre PWA sur différents navigateurs, appareils et systèmes d'exploitation.
- Mettez en œuvre des mécanismes de repli : Utilisez
display_overridepour garantir une expérience cohérente sur toutes les plateformes. - Optimisez les performances : Minimisez les temps de chargement et optimisez votre PWA pour une utilisation hors ligne.
- Envisagez les bannières d'installation d'application : Incitez les utilisateurs à installer votre PWA sur leur écran d'accueil à l'aide de bannières d'installation d'application. Configurez correctement votre manifeste pour que cela se déclenche.
- Mettez régulièrement à jour votre manifeste : Maintenez votre fichier manifeste à jour avec les dernières spécifications et bonnes pratiques.
- Analysez le comportement des utilisateurs : Suivez la manière dont les utilisateurs interagissent avec votre PWA dans différents modes d'affichage pour identifier les domaines à améliorer.
Conclusion
La maîtrise de la configuration des modes d'affichage du manifeste PWA est cruciale pour offrir des expériences utilisateur exceptionnelles. En comprenant les nuances de chaque option d'affichage et en tenant compte des exigences spécifiques à chaque plateforme, vous pouvez optimiser votre PWA pour les divers besoins des utilisateurs et créer une expérience véritablement engageante et semblable à une application. N'oubliez pas de donner la priorité à l'expérience utilisateur, de tester de manière approfondie sur diverses plateformes et d'affiner continuellement votre PWA en fonction des commentaires des utilisateurs et de l'évolution des normes web. En suivant ces bonnes pratiques, vous pouvez libérer tout le potentiel des PWA et offrir une expérience web supérieure à votre public mondial.