Condividi tramite


Richiedi valutazioni e recensioni per la tua app

Puoi aggiungere codice alla tua app UWP (Universal Windows Platform) per chiedere ai tuoi clienti di valutare o recensire la tua app a livello di codice. Esistono diversi modi per farlo:

  • You can show a rating and review dialog directly in the context of your app.
  • Puoi aprire a livello di codice la pagina di valutazione e revisione della tua app in Microsoft Store.

Quando sei pronto per analizzare le tue valutazioni e rivedere i dati, puoi visualizzare i dati nel Centro per i partner o utilizzare l'API di analisi di Microsoft Store per recuperare questi dati a livello di codice.

Importante

Quando aggiungi una funzione di valutazione all'interno della tua app, tutte le recensioni devono indirizzare l'utente ai meccanismi di valutazione dello Store, indipendentemente dalla valutazione in stelle scelta. Se raccogli feedback o commenti dagli utenti, deve essere chiaro che non sono correlati alla valutazione dell'app o alle recensioni nello Store ma vengono inviati direttamente allo sviluppatore dell'app. Consulta il Codice di condotta degli sviluppatori per ulteriori informazioni relative ad attività fraudolente o disoneste.

Mostra una finestra di dialogo di valutazione e revisione nella tua app

Per mostrare a livello di codice una finestra di dialogo dalla tua app che chiede al cliente di valutare la tua app e inviare una recensione, chiama RequestRateAndReviewAppAsync metodo nello spazio dei nomiWindows.Services.Store.

Importante

La richiesta di mostrare la finestra di dialogo di valutazione e revisione deve essere richiamata nel thread dell'interfaccia utente nella tua app.

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;
    }
}

Il medoto RequestRateAndReviewAppAsync è stato introdotto in Windows 10, verrsione 1809, e può essere utilizzato solo nei progetti destinati a Windows 10 aggiornamento ottorbe 2018 (10.0; Build 17763) o una versione successiva in Visual Studio.

Dati di risposta per la richiesta di valutazione e revisione

Dopo aver inviato la richiesta per visualizzare la finestra di dialogo di valutazione e revisione, la proprietà d ExtendedJsonData della classe StoreRateAndReviewResult contiene una stringa in formato JSON che indica se la richiesta ha avuto esito positivo.

L'esempio seguente mostra il valore restituito per questa richiesta dopo che il cliente ha inviato correttamente una valutazione o una recensione.

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

L'esempio seguente mostra il valore restituito per questa richiesta dopo che il cliente ha scelto di non inviare una valutazione o una recensione.

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

La tabella seguente descrive i campi nella stringa di dati in formato JSON.

Campo Descrizione
status Una stringa che indica se il cliente ha inviato correttamente una valutazione o una recensione. Sono supportati i valori: successo einterrotto.
data Un oggetto che contiene un singolo valore booleano denominato aggiornato. Questo valore indica se il cliente ha aggiornato una valutazione o recensione esistente. L'oggetto dati è incluso solo nelle risposte di successo.
errorDetails Una stringa che contiene i dettagli dell'errore per la richiesta.

Avvia la pagina di valutazione e recensione della tua app nello Store

Se desideri aprire a livello di codice la pagina di valutazione e revisione della tua app nello Store, puoi utilizzare il metodo LaunchUriAsyn con lo ms-windows-store://review schema URI come dimostrato in questo esempio di codice.

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

Per ulteriori informazioni, vedere Avvia l'app Microsoft Store.

Analizza le tue valutazioni e rivedi i dati

Per analizzare le valutazioni e i dati delle recensioni dei tuoi clienti, hai diverse opzioni:

  • Puoi usare il rapporto sulleRecensioni nel Centro per i partner per visualizzare le valutazioni e le recensioni dei tuoi clienti. Puoi anche scaricare questo rapporto per visualizzarlo offline.
  • Puoi utilizzare i metodi Ottieni valutazioni app e Ottieni recensioni app nell'API di analisi del negozio per recuperare in modo programmatico le valutazioni e le recensioni dei tuoi clienti in formato JSON.