Solicite classificações e opiniões para seu aplicativo

Você pode adicionar código ao seu aplicativo da Plataforma Universal do Windows (UWP) para solicitar programaticamente que os clientes classifiquem ou analisem seu aplicativo. Há diversas maneiras de fazer isso:

  • Você pode mostrar um diálogo de classificação e opinião diretamente no contexto de seu aplicativo.
  • Programaticamente, você pode abrir a página de classificação e opinião do seu app na Microsoft Store.

Quando estiver pronto para analisar seus dados de classificações e revisões, você poderá exibir os dados no Partner Center ou usar a API de análise da Microsoft Store para recuperar esses dados programaticamente.

Importante

Ao adicionar uma função de classificação em seu aplicativo, todas as revisões devem enviar o usuário para os mecanismos de classificação da Loja, independentemente de star classificação escolhida. Se você coletar comentários ou comentários dos usuários, deve estar claro que ele não está relacionado à classificação ou às revisões do aplicativo na Loja, mas é enviado diretamente ao desenvolvedor do aplicativo. Consulte o Código de Conduta do Desenvolvedor para obter mais informações relacionadas a atividades fraudulentas ou desonestas.

Mostrar um diálogo de classificação e opinião em seu app

Para mostrar programaticamente uma caixa de diálogo do seu aplicativo que solicita que o cliente classifique seu aplicativo e envie uma revisão, chame o método RequestRateAndReviewAppAsync no namespace Windows.Services.Store .

Importante

A solicitação para mostrar o diálogo de classificação e opinião deve ser chamada no thread da interface do usuário em seu 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;
    }
}

O método RequestRateAndReviewAppAsync foi introduzido no Windows 10, versão 1809 e só pode ser usado em projetos destinados à Atualização de outubro de 2018 do Windows 10 (10.0; Build 17763) ou uma versão posterior no Visual Studio.

Dados de resposta para a solicitação de classificação e opinião

Depois de enviar a solicitação para exibir a caixa de diálogo de classificação e revisão, a propriedade ExtendedJsonData da classe StoreRateAndReviewResult contém uma cadeia de caracteres formatada em JSON que indica se a solicitação foi bem-sucedida.

O exemplo a seguir demonstra o valor de retorno para essa solicitação depois que o cliente envia com êxito uma classificação ou opinião.

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

O exemplo a seguir demonstra o valor de retorno para essa solicitação depois que o cliente opta por não enviar uma classificação ou opinião.

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

A tabela a seguir descreve os campos na sequência de dados formatados em JSON.

Campo Descrição
status Uma sequência que indica se o cliente enviou com êxito uma classificação ou opinião. Os valores com suporte são success e aborted.
data Um objeto que contém um único valor booliano chamado updated. Este valor indica se o cliente atualizou uma classificação ou opinião existente. O objeto data é incluído somente em respostas de êxito.
errorDetails Uma sequência que contém os detalhes do erro para a solicitação.

Inicie a página de classificação e opinião para seu app na Store

Se você quiser abrir programaticamente a página de classificação e opinião para seu app na Store, poderá usar o método LaunchUriAsync com o esquema ms-windows-store://review URI como demonstrado neste exemplo de código.

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

Para obter mais informações, consulte Iniciar o app da Microsoft Store.

Analisar seus dados de classificações e opiniões

Para analisar os dados de classificações e opiniões de seus clientes, você tem várias opções:

  • Você pode usar o relatório Revisões no Partner Center para ver as classificações e análises de seus clientes. Você também pode baixar esse relatório para exibi-lo offline.
  • Você pode usar os métodos Obter classificações do app e Obter opiniões do app na API de análise da Store para recuperar programaticamente as classificações e opiniões de seus clientes no formato JSON.