Partager via


Demander des évaluations et des révisions pour votre application

Vous pouvez ajouter du code à votre application plateforme Windows universelle (UWP) pour inviter vos clients à évaluer ou examiner votre application par programmation. Il existe plusieurs façons de procéder :

  • Vous pouvez afficher une boîte de dialogue d’évaluation et de révision directement dans le contexte de votre application.
  • Vous pouvez ouvrir par programmation la page d’évaluation et de révision de votre application dans le Microsoft Store.

Lorsque vous êtes prêt à analyser vos évaluations et à passer en revue les données, vous pouvez afficher les données dans l’Espace partenaires ou utiliser l’API d’analyse du Microsoft Store pour récupérer ces données par programmation.

Important

Lors de l’ajout d’une fonction d’évaluation au sein de votre application, toutes les révisions doivent envoyer l’utilisateur aux mécanismes d’évaluation du Store, quel que soit l’évaluation en étoile choisie. Si vous collectez des commentaires ou des commentaires des utilisateurs, il doit être clair qu’il n’est pas lié à l’évaluation ou aux avis de l’application dans le Windows Store, mais est envoyé directement au développeur de l’application. Pour plus d’informations sur les activités frauduleuses ou malhonnêtes, consultez le Code de conduite du développeur.

Afficher une boîte de dialogue d’évaluation et de révision dans votre application

Pour afficher par programmation une boîte de dialogue à partir de votre application qui demande à votre client d’évaluer votre application et d’envoyer une révision, appelez la méthode RequestRateAndReviewAppAsync dans l’espace de noms Windows.Services.Store .

Important

La demande d’affichage de la boîte de dialogue d’évaluation et de révision doit être appelée sur le thread d’interface utilisateur de votre application.

using Windows.ApplicationModel.Store;

private StoreContext _storeContext;

public async Task Initialize()
{
    if (App.IsMultiUserApp) // pseudo-code
    {
        IReadOnlyList<User> users = await User.FindAllAsync();
        User firstUser = users[0];
        _storeContext = StoreContext.GetForUser(firstUser);
    }
    else
    {
        _storeContext = StoreContext.GetDefault();
    }
}

private async Task PromptUserToRateApp()
{
    // Check if we’ve recently prompted user to review, we don’t want to bother user too often and only between version changes
    if (HaveWePromptedUserInPastThreeMonths())  // pseudo-code
    {
        return;
    }

    StoreRateAndReviewResult result = await 
        _storeContext.RequestRateAndReviewAppAsync();

    // Check status
    switch (result.Status)
    { 
        case StoreRateAndReviewStatus.Succeeded:
            // Was this an updated review or a new review, if Updated is false it means it was a users first time reviewing
            if (result.UpdatedExistingRatingOrReview)
            {
                // This was an updated review thank user
                ThankUserForReview(); // pseudo-code
            }
            else
            {
                // This was a new review, thank user for reviewing and give some free in app tokens
                ThankUserForReviewAndGrantTokens(); // pseudo-code
            }
            // Keep track that we prompted user and don’t do it again for a while
            SetUserHasBeenPrompted(); // pseudo-code
            break;

        case StoreRateAndReviewStatus.CanceledByUser:
            // Keep track that we prompted user and don’t prompt again for a while
            SetUserHasBeenPrompted(); // pseudo-code

            break;

        case StoreRateAndReviewStatus.NetworkError:
            // User is probably not connected, so we’ll try again, but keep track so we don’t try too often
            SetUserHasBeenPromptedButHadNetworkError(); // pseudo-code

            break;

        // Something else went wrong
        case StoreRateAndReviewStatus.OtherError:
        default:
            // Log error, passing in ExtendedJsonData however it will be empty for now
            LogError(result.ExtendedError, result.ExtendedJsonData); // pseudo-code
            break;
    }
}

La méthode RequestRateAndReviewAppAsync a été introduite dans Windows 10, version 1809, et elle ne peut être utilisée que dans les projets qui ciblent windows 10 octobre 2018 Update (10.0 ; Build 17763) ou une version ultérieure dans Visual Studio.

Données de réponse pour la demande d’évaluation et de révision

Après avoir envoyé la demande pour afficher la boîte de dialogue d’évaluation et de révision, la propriété ExtendedJsonData de la classe StoreRateAndReviewResult contient une chaîne au format JSON qui indique si la requête a réussi.

L’exemple suivant illustre la valeur de retour de cette demande une fois que le client a envoyé une évaluation ou une révision.

{ 
  "status": "success", 
  "data": {
    "updated": false
  },
  "errorDetails": "Success"
}

L’exemple suivant illustre la valeur de retour de cette demande une fois que le client choisit de ne pas soumettre d’évaluation ou de révision.

{ 
  "status": "aborted", 
  "errorDetails": "Navigation was unsuccessful"
}

Le tableau suivant décrit les champs de la chaîne de données au format JSON.

Champ Description
statut Chaîne qui indique si le client a correctement envoyé une évaluation ou une révision. Les valeurs prises en charge sont réussies et abandonnées.
data Objet qui contient une valeur booléenne unique nommée mise à jour. Cette valeur indique si le client a mis à jour une évaluation ou une révision existante. L’objet de données est inclus dans les réponses de réussite uniquement.
errorDetails Chaîne qui contient les détails de l’erreur pour la requête.

Lancer la page d’évaluation et de révision de votre application dans le Windows Store

Si vous souhaitez ouvrir par programmation la page d’évaluation et de révision de votre application dans le Windows Store, vous pouvez utiliser la méthode LaunchUriAsync avec le ms-windows-store://review schéma d’URI, comme illustré dans cet exemple de code.

bool result = await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-windows-store://review/?ProductId=9WZDNCRFHVJL"));

Pour plus d’informations, consultez Lancer l’application Microsoft Store.

Analyser vos données d’évaluation et de révision

Pour analyser les évaluations et les données de révision de vos clients, vous avez plusieurs options :

  • Vous pouvez utiliser le rapport Révisions dans l’Espace partenaires pour afficher les évaluations et les avis de vos clients. Vous pouvez également télécharger ce rapport pour l’afficher hors connexion.
  • Vous pouvez utiliser les méthodes Get app ratings and Get app reviews in the Store analytics API to retrieve the ratings and reviews from your customers in JSON format.