Bonnes pratiques concernant les activités utilisateur
Ce guide décrit les pratiques recommandées pour la création et la mise à jour des activités utilisateur. Pour obtenir une vue d’ensemble de la fonctionnalité Activités utilisateur sur Windows, consultez Continuer l’activité des utilisateurs, même sur les appareils. Vous pouvez également consulter la section Activités utilisateur de Project Rome pour connaître les implémentations d’activités sur d’autres plateformes de développement.
Remarque
À compter de juillet 2021, les utilisateurs dont l’historique des activités est synchronisé sur leurs appareils Windows par le biais de leur compte Microsoft (MSA) n’auront plus la possibilité de charger une nouvelle activité dans Chronologie. Ils pourront toujours utiliser Chronologie et voir l’historique de leurs activités (informations sur les applications récentes, les sites web et les fichiers) sur leur PC local. Les comptes connectés à AAD ne seront pas affectés.
Quand créer ou mettre à jour des activités utilisateur
Étant donné que chaque application est différente, il incombe à chaque développeur de déterminer la meilleure façon de mapper des actions au sein de l’application aux activités utilisateur. Vos activités utilisateur seront présentées dans Cortana et chronologie, qui sont axées sur l’augmentation de la productivité et de l’efficacité des utilisateurs en les aidant à revenir au contenu qu’ils ont visité dans le passé.
Recommandations générales
- Enregistrez une activité unique pour un groupe d’actions utilisateur associées. Cela est particulièrement pertinent pour les playlists musicales ou les émissions de télévision : une activité unique peut être mise à jour à intervalles réguliers pour refléter la progression de l’utilisateur. Dans ce cas, vous aurez une activité utilisateur unique avec plusieurs éléments d’historique représentant des périodes d’engagement sur plusieurs jours ou semaines. La même chose s’applique aux activités basées sur des documents sur lesquelles l’utilisateur progresse progressivement dans votre application.
- Stockez les données utilisateur dans le cloud. Si vous souhaitez prendre en charge les activités inter-appareils, vous devez vous assurer que le contenu requis pour réactiver cette activité est stocké dans un emplacement cloud. Les activités spécifiques à l’appareil s’affichent sur la chronologie de l’appareil sur lequel l’activité a été créée, mais peuvent ne pas apparaître sur d’autres appareils.
- Ne créez pas d’activités pour les actions que les utilisateurs n’auront pas besoin de reprendre. Si votre application est utilisée pour effectuer des opérations simples et ponctuelles qui ne conservent pas l’état, vous n’avez probablement pas besoin de créer une activité utilisateur.
- Ne créez pas d’activités pour les actions effectuées par d’autres utilisateurs. Si un compte externe envoie un message ou @mentionne l’utilisateur dans votre application, vous ne devez pas créer d’activité pour cela. Ce type d’action est mieux pris en charge par les notifications du Centre de notifications.
- Les scénarios de collaboration sont une exception : si plusieurs utilisateurs travaillent ensemble sur la même activité (par exemple, un document Word), il existe des cas où un autre utilisateur a apporté des modifications après votre utilisateur. Dans ce cas, vous pouvez mettre à jour l’activité existante pour refléter les modifications apportées au document. Cela implique la mise à jour des données de contenu d’activité utilisateur existantes sans créer d’élément d’historique.
Instructions pour des types d’applications spécifiques
Bien que chaque application soit différente, la plupart des applications tombent dans l’un des modèles d’interaction suivants.
- Applications basées sur des documents : créez une activité par document, avec un ou plusieurs éléments d’historique reflétant les périodes d’utilisation. Il est important de mettre à jour votre activité à mesure que des modifications sont apportées au document.
- Jeux : créez une activité pour chaque jeu de sauvegarde ou monde. Si votre jeu ne prend en charge qu’une seule séquence de niveaux, vous pouvez republier la même activité au fil du temps, bien que vous souhaitiez peut-être mettre à jour les données de contenu pour afficher les dernières progressions ou réalisations.
- Applications utilitaires : s’il n’y a rien dans votre application que les utilisateurs devront quitter et reprendre, vous n’avez pas besoin d’utiliser les activités utilisateur. Un bon exemple est une application simple comme Calculator.
- Applications métier : de nombreuses applications existent pour gérer des tâches ou des flux de travail simples. Créez une activité pour chaque flux de travail distinct accessible via votre application (par exemple, les rapports de frais seraient chacun une activité distincte, afin que l’utilisateur puisse ensuite cliquer sur une activité pour voir si un rapport particulier a été approuvé).
- Applications de lecture multimédia : créez une activité par regroupement logique de contenu (par exemple, une playlist, un programme ou un contenu autonome). La question sous-jacente pour les développeurs d’applications est de savoir si chaque élément de contenu (épisode tv, chanson) compte comme contenu autonome ou partie d’une collection. En règle générale, si l’utilisateur choisit de lire une collection ou un contenu séquentiel, la collection dans son ensemble est l’activité. S’ils choisissent de lire un seul élément de contenu, il s’agit de l’activité. Consultez les instructions plus spécifiques ci-dessous.
- Musique : Album/Artiste/Genre : si l’utilisateur sélectionne un jeu d’album, d’artiste ou de genre, cette collection est l’activité ; n’écrivez pas d’activité distincte pour chaque chanson. Pour les collections courtes comme un seul album ou des collections lues dans un ordre aléatoire, vous n’avez peut-être pas besoin de mettre à jour l’activité pour refléter la position actuelle de l’utilisateur. Pour une lecture séquentielle longue telle qu’un album ou une playlist, l’enregistrement de votre position dans l’album peut être judicieux.
- Musique : playlists intelligentes : les applications qui jouent de la musique dans un ordre aléatoire doivent enregistrer une activité unique pour cette playlist. Si l’utilisateur lit la playlist une deuxième fois, vous créez des enregistrements d’historique supplémentaires pour la même activité. L’enregistrement de la position actuelle de l’utilisateur dans la playlist n’est pas nécessaire, car l’ordre est aléatoire.
- Séries tv : si votre application est configurée pour lire l’épisode suivant une fois la série actuelle terminée, vous devez écrire une activité unique pour la série télévisée. Lorsque vous jouez les différents épisodes de plusieurs sessions d’affichage, vous allez mettre à jour votre activité pour refléter la position actuelle dans la série, et plusieurs enregistrements d’historique seront créés.
- Film - Un film est un seul élément de contenu et devrait avoir son propre enregistrement historique. Si l’utilisateur cesse de regarder le film en partie, il est souhaitable d’enregistrer sa position. Quand ils souhaitent le reprendre à l’avenir, l’activité peut reprendre le film où il s’est arrêté, ou même demander à l’utilisateur s’il souhaite reprendre ou commencer au début.
Conception de l’activité utilisateur
Les activités utilisateur se composent de trois composants : un URI d’activation, des données visuelles et des métadonnées de contenu.
- L’URI d’activation est un URI qui peut être transmis à une application ou une expérience afin de reprendre l’application avec un contexte spécifique. En règle générale, ces liens prennent la forme d’un gestionnaire de protocole pour un schéma (par exemple, « my-app ://page2 ?action=edit »). Il incombe au développeur de déterminer la façon dont les paramètres d’URI seront gérés par leur application. Pour plus d’informations, consultez Gérer l’activation d’URI .
- Les données visuelles, constituées d’un ensemble de propriétés obligatoires et facultatives (par exemple : titre, description ou éléments de carte adaptative), permettent aux utilisateurs d’identifier visuellement une activité. Consultez ci-dessous pour obtenir des instructions sur la création de visuels de carte adaptative pour votre activité.
- Les métadonnées de contenu sont des données JSON qui peuvent être utilisées pour regrouper et récupérer des activités dans un contexte spécifique. En règle générale, cela prend la forme de http://schema.org données. Consultez ci-dessous pour obtenir des instructions sur le remplissage de ces données.
Recommandations en matière de conception de carte adaptative
Lorsque les activités apparaissent dans la chronologie, elles s’affichent à l’aide de l’infrastructure de carte adaptative. Si le développeur ne fournit pas de carte adaptative pour chaque activité, la chronologie crée automatiquement une carte simple en fonction du nom/de l’icône de l’application, du champ Titre requis et du champ Description facultatif.
Les développeurs d’applications sont encouragés à fournir des cartes personnalisées à l’aide du schéma JSON de carte adaptative simple. Consultez la documentation sur les cartes adaptatives pour obtenir des instructions techniques sur la façon de construire des objets de carte adaptative. Reportez-vous aux instructions ci-dessous pour la conception de cartes adaptatives dans les activités utilisateur.
- Utiliser des images
- Utilisez une image unique pour chaque activité, si possible. Le nom et l’icône de votre application s’affichent automatiquement en regard de la carte de votre activité ; d’autres images aideront les utilisateurs à localiser l’activité qu’ils recherchent.
- Les images ne doivent pas inclure de texte que l’utilisateur doit lire. Ce texte ne sera pas disponible pour les utilisateurs ayant des besoins d’accessibilité et ne peut pas être recherché.
- Si l’image ne contient pas de texte et peut être rognée à environ 2:1 ratio, vous devez l’utiliser comme image d’arrière-plan. Cela entraîne une carte d’activité en gras qui se distingue dans chronologie. L’image sera légèrement assombrie pour vous assurer que le texte reste visible sur la carte, et vous êtes encouragé à utiliser uniquement le nom de l’activité dans ce cas, car le texte plus petit peut devenir difficile à lire.
- Si l’image ne peut pas être rognée à 2:1, vous devez la placer dans la carte d’activité.
- Si le rapport d’aspect est Carré ou Portrait, ancrez l’image sur le côté droit de la carte sans marges.
- Si le rapport d’aspect est Paysage, ancrez l’image dans le coin supérieur droit de la carte.
- Chaque activité est requise pour fournir un nom d’activité, qui doit toujours être affiché.
- Ce nom doit être affiché dans le coin supérieur gauche de la carte à l’aide de l’option de texte en gras volumineux. Il est important que le nom soit facilement reconnaissable, car il s’agit de la seule partie que les utilisateurs verront quand l’activité est affichée dans les scénarios Cortana. L’affichage du même nom dans chronologie facilite la navigation des utilisateurs dans un grand nombre d’activités.
- Utilisez le même style visuel pour toutes les activités de votre application, afin que les utilisateurs puissent facilement localiser les activités de votre application dans la chronologie.
- Par exemple, les activités doivent toutes utiliser la même couleur d’arrière-plan.
- Utilisez des informations de texte supplémentaires avec parcimonie.
- Évitez de remplir la carte avec du texte et utilisez uniquement des informations supplémentaires qui permettent aux utilisateurs de trouver l’activité appropriée ou reflète les informations d’état (telles que la progression actuelle dans une tâche particulière).
Recommandations en matière de métadonnées de contenu
Les activités utilisateur peuvent également contenir des métadonnées de contenu, que Windows et Cortana utilisent pour catégoriser les activités et générer des inférences. Les activités peuvent ensuite être regroupées autour d’une rubrique particulière, telle qu’un emplacement (si l’utilisateur recherche des vacances), un objet (si l’utilisateur recherche quelque chose) ou une action (si l’utilisateur achète un produit particulier sur différentes applications et sites web). Il est judicieux de représenter à la fois les noms et les verbes impliqués dans une activité.
Dans l’exemple suivant, le JSON des métadonnées de contenu, suivant les normes de Schema.org, représente le scénario : « John a joué Angry Birds avec Steve ».
// John played angry birds with Steve.
{
"@context": "http://schema.org",
"@type": "PlayAction",
"agent": {
"@type": "Person",
"name": "John"
},
"object": {
"@type": "MobileApplication",
"name": "Angry Birds."
},
"participant": {
"@type": "Person",
"name": "Steve"
}
}