Compartilhar via


Análise do App Center (Unity)

Importante

O Visual Studio App Center foi desativado em 31 de março de 2025, com exceção dos recursos de Análise e Diagnóstico, que continuarão com suporte até 30 de junho de 2026. Saiba mais.

A Análise do App Center ajuda você a entender o comportamento do usuário e o envolvimento do cliente para melhorar seu aplicativo. O SDK captura automaticamente a contagem de sessão e as propriedades do dispositivo, como modelo, versão do sistema operacional etc. Você pode definir seus próprios eventos personalizados para medir coisas importantes para você. Todas as informações capturadas estão disponíveis no portal do App Center para você analisar os dados.

Siga as instruções na seção Introdução do Unity se você ainda não configurou o SDK em seu aplicativo.

Observação

Para usar as APIs apresentadas abaixo, você deve adicionar a seguinte using instrução ao arquivo .cs :

using Microsoft.AppCenter.Unity.Analytics;

Você também deve verificar se o Use Analytics está verificado nas configurações do objeto de jogo do App Center.

Informações de sessão e dispositivo

Depois de adicionar o App Center Analytics e iniciar o SDK, ele controlará automaticamente as sessões e as propriedades do dispositivo, como versão do sistema operacional, modelo etc. sem a necessidade de nenhum código adicional em seu aplicativo.

Eventos personalizados

Você pode acompanhar seus próprios eventos personalizados com até 20 propriedades para saber o que está acontecendo em seu aplicativo, entender as ações do usuário e ver as agregações no portal do App Center.

Use o método TrackEvent() para acompanhar seus eventos com propriedades. Você pode enviar até 200 nomes de eventos distintos. Há um limite máximo de 256 caracteres para o nome de cada evento e 125 caracteres para o nome e valor de cada propriedade de evento.

Analytics.TrackEvent("Video clicked", new Dictionary<string, string> {
	{ "Category", "Music" },
	{ "FileName", "favorite.avi" }
});

As propriedades para eventos são opcionais– se você quiser apenas acompanhar um evento, use este exemplo em vez disso:

Analytics.TrackEvent("Video clicked");

Aviso

Analytics.TrackEvent() se comportará de forma inconsistente entre plataformas se for chamado antes do método Awake() no script chamado AppCenterBehavior.cs. Para garantir segurança, você deve contar apenas com eventos sendo enviados depois que a primeira cena em seu aplicativo tiver despertado todos os MonoBehaviour scripts. Para acompanhar um evento em conjunto com a inicialização de um MonoBehavour, considere adicionar a API ao método Start() do script em vez de Awake().

Habilitar ou desabilitar a Análise do App Center em runtime

Você pode habilitar e desabilitar a Análise do App Center em runtime. Se você desabilitá-lo, o SDK deixará de coletar informações de análise para o aplicativo. Para desabilitar o Analytics, use a API a seguir, passando false como um parâmetro.

Analytics.SetEnabledAsync(false);

Para habilitar a Análise do App Center novamente, use a mesma API, mas passe true como um parâmetro.

Analytics.SetEnabledAsync(true);

O estado é mantido no armazenamento do dispositivo entre as inicializações do aplicativo.

Essa API é assíncrona, você pode ler mais sobre nosso guia de APIs assíncronas do App Center .

Verificar se a Análise do App Center está habilitada

Você também pode verificar se a Análise do App Center está habilitada ou não.

bool isEnabled = await Analytics.IsEnabledAsync();

Prioridade e persistência do evento

Você pode acompanhar eventos comercialmente críticos que têm maior importância do que outros eventos.

Os desenvolvedores podem definir a persistência de eventos como Normal (Flags.PersistenceNormal na API) ou Crítico (Flags.PersistenceCritical na API).

Você pode usar a API a seguir para acompanhar um evento como Crítico:

Analytics.TrackEvent("eventName", Flags.PersistenceCritical);

Caso esteja usando propriedades:

Analytics.TrackEvent("eventName", new Dictionary<string, string> {
	{ "Category", "Music" },
	{ "FileName", "favorite.avi" }
}, Flags.PersistenceCritical);

Pausar e retomar o envio de logs

Pausar a transmissão de eventos pode ser útil em cenários em que o aplicativo precisa controlar a largura de banda de rede para necessidades mais críticas para os negócios. Você pode pausar o envio de logs para o back-end do App Center. Quando pausados, os eventos ainda podem ser rastreados e salvos, mas não são enviados imediatamente. Todos os eventos que seu aplicativo acompanha durante a pausa só serão enviados quando você chamar Analytics.Resume.

Analytics.Pause();
Analytics.Resume();

Essa API é assíncrona, você pode ler mais sobre nosso guia de APIs assíncronas do App Center .

Gerenciar a sessão de início

Por padrão, a ID da sessão depende do ciclo de vida do aplicativo. Se você quiser controlar o início de uma nova sessão manualmente, siga as próximas etapas:

Observação

Preste atenção que cada chamada da API Analytics.StartSession() gerará uma nova sessão. Se no modo de rastreador de sessão manual essa API não for chamada, todos os logs de envio terão um valor de sessão nulo.

Observação

Preste atenção que após um novo aplicativo iniciar a ID da sessão será regenerada.

  • Desmarque a caixa de seleção Habilitar Rastreador de Sessão Manual na seção Análise no objeto do jogo com AppCenterBehavior anexado.
  • Em seguida, você pode usar a StartSession API após :AppCenter.Start
Analytics.StartSession();

Tamanho do armazenamento local

Por padrão, o SDK armazena até 10 MB de logs no armazenamento.

Sem acesso à Internet

Quando não há conectividade de rede, o SDK salva até 10 MB de logs no armazenamento local. Depois que o armazenamento estiver cheio, o SDK começará a descartar logs antigos para abrir espaço para os novos logs. Depois que o dispositivo receber o acesso à Internet de volta, o SDK enviará logs no lote de 50 ou após cada 6 segundos.

Logs de eventos de envio em lote

O SDK do App Center carrega logs em um lote de 50 e, se o SDK não tiver 50 logs para enviar, ele ainda enviará logs após 6 segundos. Pode haver no máximo três lotes enviados em paralelo.

Repetição e lógica de recuo

O SDK do App Center dá suporte a novas tentativas de retirada em erros de rede recuperáveis. Abaixo está a lógica de tentativa novamente:

  • 3 tentativas máximas por solicitação.
  • Cada solicitação tem seu próprio computador de estado de repetição.
  • Todos os canais de transmissão são desabilitados (até o próximo processamento do aplicativo) depois que uma solicitação esgota todas as suas tentativas.

Lógica de recuo

  • 50% randomização, primeira tentativa entre 5 e 10 segundos, segunda tentativa entre 2,5 e 5 minutos, última tentativa entre 10 e 20 minutos.
  • Se a rede mudar de desativada para ativa (ou de wi-fi para móvel), os estados de repetição serão redefinidos e as solicitações serão repetidas imediatamente.