Préparer votre application SharePoint Framework pour la publication sur Marketplace

Avant qu’une application SharePoint Framework ne soit publiée sur Marketplace, elle doit passer par un processus d’approbation. Ce processus est exécuté gratuitement par Microsoft et est conçu pour s’assurer que votre application fonctionne correctement et que sa page décrit clairement ses objectifs et fonctionnalités. Pour vous aider à publier votre application sur le Marketplace, voici la liste des tests effectués dans le cadre du processus d'approbation.

Conditions préalables

Utiliser SharePoint Framework v 1.11 ou version ultérieure

Pour créer des solutions que vous souhaitez publier sur Marketplace, vous devez utiliser SharePoint Framework v 1.11 ou une version ultérieure. Depuis la version 1.11, le manifeste de la solution SharePoint Framework contient des informations supplémentaires sur votre organisation et votre solution, lesquelles sont requises pour publier votre application sur Marketplace.

Conseil

Si votre application est conçue à l’aide d’une version antérieure de SharePoint Framework, vous pouvez facilement la mettre à niveau vers SharePoint Framework v 1.11 ou version ultérieure à l’aide de CLI pour Microsoft 365. Pour plus d'informations, visitez les sites suivantshttps://pnp.github.io/cli-microsoft365/cmd/spfx/project/project-upgrade/.

Tester l’application dans les sites racine et non racine

Lorsque vous testez votre application, vérifiez qu’elle fonctionne comme prévu lorsque celle-ci est installée dans la collection de sites racine d’un locataire, ainsi que des sites non racine. Cela vous permet de vérifier qu'il n'y a pas de dépendance avec des URL de sites spécifiques.

Tester l’application dans les navigateurs requis

Lorsque vous testez votre application par rapport aux vérifications décrites dans la section suivante, vérifiez qu’elle fonctionne comme prévu au moins sur Windows 10 dans les dernières versions du locataire Microsoft Edge, Google Chrome, Firefox et bureau Microsoft Teams (si votre application présente les composants WebPart dans Teams).

Vérifications requises

Les vérifications suivantes doivent être passées. Si une ou plusieurs vérifications de cette catégorie ont échoué, votre application est rejetée et vous êtes invité à résoudre les problèmes signalés.

Vérifier la conformité des contrats SharePoint Framework

Votre composant WebPart ou votre personnalisateur doit uniquement manipuler l’élément DOM fourni par le biais de la propriété domElement. Cet élément et l’objet de contexte fourni sont les seuls moyens approuvés pour ajouter des fonctionnalités aux sites via votre application. La manipulation directe de la page DOM entraîne le rejet de votre solution.

Dans des conditions normales, la solution doit fonctionner comme prévu

Dans des conditions normales, tous les composants (composants WebPart et extensions) de votre solution doivent fonctionner comme prévu. De préférence, avant de soumettre votre application pour approbation, vous devez vérifier qu’elle fonctionne comme prévu sur plusieurs locataires et qu’elle utilise différents comptes d’utilisateur pour s’assurer qu’elle ne dépend pas d’une configuration spécifique. Si votre solution nécessite des paramètres spécifiques, mentionnez-le explicitement dans la description de votre solution.

Le composant WebPart doit fonctionner sur tous les hôtes dans lesquels il est exposé

Lors de la création de composants WebPart à l’aide de SharePoint Framework, vous pouvez choisir l’endroit où ils doivent être exposés. Avant de soumettre votre application pour révision, vérifiez que votre composant WebPart fonctionne comme prévu dans tous ces hôtes.

Le package de solution doit contenir des métadonnées de développeur valides

Le manifeste de la solution (géré dans le fichier package-solution.json) doit avoir une nouvelle section nommée developer avec les propriétés suivantes :

Attribut Description Obligatoire
name Nom de l’organisation ayant créé l’application. Oui
websiteUrl URL d’un site web contenant des informations supplémentaires sur l’application Oui
mpnId ID Microsoft Partner Network (plus de détails sur réseau de partenaires MS) Non (mais vivement recommandé de la fournir)
privacyUrl URL de déclaration de confidentialité. Oui
termOfUseUrl URL des conditions d'utilisation Oui

L'inclusion de ces informations supplémentaires vous permet de communiquer clairement des informations sur votre application à vos utilisateurs et devrait vous permettre à l'avenir d'accéder à des données d'utilisation supplémentaires.

Les informations sur le développeur s’affichent lors de l’installation de composants WebPart dans Microsoft Teams. Les informations sur l’application et le développeur qui s’affichent sur Marketplace sont gérées séparément sur Marketplace.

Le texte de description des métadonnées du composant WebPart doit décrire brièvement ses fonctionnalités et sa proposition de valeur

Assurez-vous que la description de votre composant WebPart dans les métadonnées est explicite, de sorte que les utilisateurs puissent comprendre l’objectif de votre composant WebPart et ce qu’ils peuvent en attendre.

La description de la solution doit décrire clairement les différents composants inclus dans le package.

Lorsque vous soumettez votre package sur Marketplace, n'oubliez pas de décrire clairement les différents composants (composants WebPart, personnalisateurs d’applications, etc.) inclus dans le package pour gérer les attentes des utilisateurs et les aider à comprendre l’impact de l’utilisation de votre application.

Ne pas utiliser les noms des fonctionnalités dans Teams et SharePoint dans le nom de votre solution

Dans le nom de votre solution, n’utilisez pas les mots qui correspondent aux fonctionnalités de Microsoft Teams ou de SharePoint. par exemple, Conversation, Contacts, Calendrier, Appels, Fichiers, Réunions,Activité, Teams, Applications,Aide, SharePoint,Liste,Page, etc. car ces noms pourraient être confondus avec les fonctionnalités standard de Teams et SharePoint.

Ne pas utiliser de noms d’autres produits Microsoft dans le nom de votre solution

Votre solution est rejetée si son nom contient un nom d’un autre produit Microsoft, par exemple, Outlook, Word, Calendrier, Tâches, Teams, Excel, PowerPoint, Visio, etc.

Votre solution ne doit pas utiliser les mots clés spécifiques aux fonctionnalités de Microsoft Teams ou de SharePoint, tels que Commencer la réunion, Passer un appel, Charger un fichier, Démarrer une conversation, etc. Ces mots clés sont utilisés dans les produits Microsoft, et leur utilisation dans votre application risque de dérouter les utilisateurs. Si votre application offre des fonctionnalités similaires, indiquez le nom de votre nom dans l’action (par exemple, Commencer une réunion zoom, Charger un fichier vers Dropbox, Démarrer une conversation Freshdesk, etc.).

Nommer votre solution

Si votre solution porte le nom d’un mot commun (par exemple, Commandes), vous devez inclure le nom de votre entreprise et la différencier des autres solutions sur Marketplace, par exemple Contoso Commandes. Où Contoso fait référence au nom de la société qui a envoyé la solution.

Assurez-vous que le fichier de configuration package-solution.json est compréhensible name entrée mis à jour en fonction du format ci-dessus, comme illustré dans l’exemple ci-dessous.

N'incluez pas d'autres publicités dans la description et les captures d'écran de votre application

Assurez-vous que la description de l’application, les captures d’écran, le texte et les images promotionnelles, décrivez uniquement l’application et ne contiennent pas d’autres publicités.

Toutes les propriétés exposées dans le volet de propriétés doivent être fonctionnelles

Les propriétés exposées dans le volet de propriétés de votre composant WebPart doivent être significatives. La modification de leurs paramètres doit clairement modifier le comportement de votre composante WebPart.

Vérifiez que le fichier de package peut être chargé dans le catalogue d’applications sans erreurs

Vérifiez que le package de solution peut être chargé dans le catalogue d’applications de votre locataire sans aucune erreur.

Vérifiez que l’application peut être déployée sans erreur

Vérifiez que votre application peut être installée sur un site spécifique, mais qu’elle peut également être déployée de manière globale sur tous les sites sans aucune erreur.

Fournir une justification pour toutes les demandes API

Si votre application nécessite un accès API supplémentaire (par exemple pour communiquer avec Microsoft Graph), elle doit le demander dans le manifeste de la solution. Vous devez également préparer une justification pour l'accès à l'API demandé, car nous pourrions vous le demander lors de l'examen de votre application.

La prise en charge des utilisateurs finaux pour l’insertion de scripts est interdite

Votre solution ne peut pas autoriser les utilisateurs finaux d’incorporer des scripts arbitraires aux pages SharePoint. Par conséquent, il n’est pas possible de publier sur SharePoint Store les solutions qui autorisent l’activation de scénarios classiques d’éditeur de scripts ou d’éditeur de contenu dans SharePoint.

Ce modèle n’est pas autorisé via SharePoint Store, car il pose des problèmes de sécurité pour les utilisateurs finaux habituels incorporant des scripts dans le portail. Vous pouvez uniquement fournir ce type de solution aux clients en dehors du store hébergé par Microsoft.

Toutes les URL affichées dans le composant WebPart doivent fonctionner

Si votre composant WebPart affiche des URL, celles-ci doivent pointer vers des ressources existantes et ne doivent pas conduire à de pages non existantes ou d’erreur.

L’application ne répond plus

Lorsque vous utilisez votre application, celle-ci ne doit plus répondre aux utilisateurs. Si elle doit effectuer une opération qui peut prendre un certain temps, elle le communique à l'utilisateur.

La solution est-elle complète ?

Votre solution contient-elle toutes les fonctionnalités telles que annoncées dans ses descriptions et captures d’écran ?

L’interface utilisateur de l’application est-elle terminée

La première impression que les utilisateurs auront de votre application sera en examinant son interface utilisateur. S'il n'a pas l'air poli, si certains éléments sont mal alignés, s'il utilise de nombreuses polices différentes ou si un texte de remplacement n'a pas été remplacé par sa valeur finale, cela pourrait leur donner l'impression que votre application n'est pas terminée et qu'ils ne devraient pas l'utiliser.

Conseil

Pour garantir une intégration transparente avec SharePoint et Teams, nous vous recommandons d’utiliser Office UI Fabric qui est la langue de conception pour Microsoft 365. Pour plus d’informations, consultez la section conception de cette documentation.

L’application ne doit pas inviter des utilisateurs sans interaction explicite

Votre application ne doit pas inciter les utilisateurs sans interaction explicite de leur part.

Vérifiez que les navigateurs ne bloquent pas vos fenêtres contextuelles

Si votre application utilise des fenêtres contextuelles, vérifiez que les navigateurs avec des paramètres par défaut ne les bloquent pas, ce qui interromprait le flux d'utilisateurs.

Corriger l’expérience de premier démarrage

Dans la mesure du possible, votre application doit fonctionner dès son lancement. Si elle doit d'abord être configurée, communiquez clairement les étapes suivantes à l'utilisateur. Si la configuration est complexe ou nécessite des informations supplémentaires, fournissez des instructions claires pour aider les utilisateurs à configurer votre application.

Tester la synchronisation avec Teams

Si votre application contient des composants WebPart exposés sous la forme d’onglets Teams ou d’applications personnelles, assurez-vous qu’elles peuvent être déployées auprès des équipes à l’aide de l’option Synchroniser avec Teams dans le catalogue d’applications sans erreurs. Une fois la configuration synchronisée avec Teams, assurez-vous que tous les composants WebPart sont exposés dans le catalogue d’applications Teams, comme prévu, peuvent être installés et fonctionner comme prévu.

Assurez-vous que les liens, tels que Conditions d’utilisation du service, Stratégie de confidentialité, À propos, etc. sont valides et pointent vers des pages correctes.

Acquérir un compte ou une licence

Si votre solution exige que les utilisateurs acquièrent un compte ou une licence, est-il clair sur la façon dont ils peuvent le faire et comment ils peuvent utiliser les informations obtenues avec votre application ?

Pas de contenu de démonstration si l'essai gratuit est inclus dans l'offre

Si votre offre comprend un essai gratuit de votre application, alors votre application ne doit pas inclure de contenu de démonstration.

Ne pas inclure de code malveillant

Les solutions contenant des codes malveillants, un lien vers des sites web malveillants ou des ressources illégales, sont rejetées de la publication sur Marketplace.

Ne pas inclure la ressource vulnérable

Vérifiez que votre code ne contient pas de vulnérabilités. Si vous utilisez des dépendances tierces

Assurez-vous que votre application n’utilise pas excessivement les ressources

Lorsque vous testez votre application, assurez-vous qu’elle ne génère pas d’augmentation notable ou d’augmentation continue de l’utilisation du processeur, qu’elle ne consomme pas une grande quantité de mémoire et qu'elle n'entraîne pas de perte de réactivité du navigateur. En général, votre application doit s’exécuter correctement sur un ordinateur de bureau moyen avec accès à Internet. De plus, le chargement de votre application ne doit pas prendre plus de 10 secondes.

Les solutions ciblées de Microsoft Teams étendues au client.

Les solutions SharePoint Framework conçues pour être également utilisées dans Microsoft Teams devront être adaptées à l’étendue client. Ce paramètre est contrôlé avec skipFeatureDeploymentl’attribut dans le package-solution.json fichier de configuration et le paramètre doit être true pour toute solution disposant d’éléments prévus pour Microsoft Teams.

Il est recommandé de passer les vérifications suivantes. Bien qu'un échec dans cette catégorie ne vous empêche pas de publier votre application sur Marketplace, il peut avoir un impact négatif sur l'expérience de l'utilisateur final.

L’icône du composant WebPart doit être 64x64px avec un arrière-plan transparent

Nous vous recommandons d’utiliser une image 64x64px avec un arrière-plan transparent pour l’icône de votre composant WebPart. Cette option permet d’afficher correctement les différents modes d’interface utilisateur dans SharePoint.

Les logos Microsoft Teams devront utiliser des tailles d’image correctes

Si votre solution contient des composants ciblés pour Microsoft Teams, ils doivent utiliser les tailles d’image officielle basées sur le Guide Microsoft Teams. Le contour de l'image doit être de 32x32px et l'image couleur de 192x192px.

La taille de l’image de page entière doit être correctement redimensionnée

Si solution contient des composants ciblés pour être exposés comme pages d’application d’un seul composant, chacun de ces composants doit avoir unfullPageAppIconImageUrl attribut avec une image spécifique conçue pour être utilisée lors de la création d’une nouvelle page dans SharePoint. Cette image doit être redimensionnée en 193x158px.

Le composant WebPart doit avoir un titre configurable dans le volet de propriétés

Nous vous recommandons de faire en sorte que tous les composants WebPart décrivent clairement les informations présentées dans le composant WebPart. Les auteurs de page doivent pouvoir ajuster ce titre via le volet de propriétés de sorte que si le composant WebPart est configurable, le titre peut décrire correctement son contenu.

Conseil

Vous pouvez facilement ajouter un titre configurable à votre composant WebPart à l’aide du contrôle de réaction réutilisable PnP WebPartTitle.

Gérer correctement différents thèmes

Votre application doit correctement gérer les thèmes de couleur claire et sombre. Le basculement entre les différents thèmes ne doit pas avoir d’incidence négative sur la convivialité de votre application. Bien que le fait de ne pas prendre en charge des thèmes ne vous empêche pas de publier votre application sur Marketplace, il est recommandé de les prendre en charge pour offrir une expérience utilisateur optimale.

Conseil

Pour en savoir plus sur l’utilisation de thèmes dans votre application, consultez l’article Utilisation des couleurs de thème dans vos personnalisations SharePoint Framework.