Compartilhar via


Análise do App Center (React Native)

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 a seção Introdução se você ainda não configurou o SDK em seu aplicativo.

Informações de sessão e dispositivo

Depois de adicionar o App Center Analytics ao seu aplicativo e o SDK for iniciado, ele controlará automaticamente sessões e propriedades do dispositivo, como versão do sistema operacional, modelo etc.

Eventos personalizados

Acompanhe seus próprios eventos personalizados com até 20 propriedades para entender a interação entre os usuários e o aplicativo.

Depois de iniciar o SDK, use o método trackEvent para monitorar seus eventos com propriedades. Você pode enviar até 200 nomes de eventos distintos. Além disso, há um limite máximo de 256 caracteres por nome de evento e 125 caracteres por nome e valor da propriedade do evento.

// import App Center Analytics at the top of the file.
import Analytics from 'appcenter-analytics';

Analytics.trackEvent('Video clicked', { Category: 'Music', FileName: 'favorite.avi' });

Essa função retorna uma promessa, o caso de êxito retorna uma cadeia de caracteres vazia e o caso de erro retorna o erro.

As propriedades dos eventos são opcionais; se você quiser apenas acompanhar um evento, use-o em vez disso:

Analytics.trackEvent('Video clicked');

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 não coletará mais informações de análise para o aplicativo.

await Analytics.setEnabled(false);

Esta função retorna uma promessa que se resolve sem valor.

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

await Analytics.setEnabled(true);

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

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.

const enabled = await Analytics.isEnabled();

Essa função retorna uma promessa que se resolve em um boolean.

Aguarde até que o JS habilite a Análise do App Center

Se você quiser coletar informações de análise para os usuários do aplicativo, mas quiser obter a permissão do usuário primeiro, terá a opção de não habilitar a análise na inicialização, mas aguardar até a hora certa e habilitá-la no JavaScript.

  1. Abra o arquivo do ios/YourAppName/AppDelegate.m projeto e substitua [AppCenterReactNativeAnalytics registerWithInitiallyEnabled:true]; por [AppCenterReactNativeAnalytics registerWithInitiallyEnabled:false];.
  2. Abra o arquivo do android/app/src/main/res/values/strings.xml projeto e substitua <string name="appCenterAnalytics_whenToEnableAnalytics" moduleConfig="true" translatable="false">ALWAYS_SEND</string> por <string name="appCenterAnalytics_whenToEnableAnalytics" moduleConfig="true" translatable="false">ENABLE_IN_JS</string>.

Isso significa que, para que todas as informações sejam enviadas ao App Center (até mesmo informações básicas da sessão), primeiro você deve habilitar a Análise do App Center adicionando a seguinte linha de código:

await Analytics.setEnabled(true);

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.

Para configurar o SDK para acompanhar a sessão manualmente, você precisa usar as APIs de Análise nativas enableManualSessionTracker :

  • No iOS, chame [MSACAnalytics enableManualSessionTracker]; antes [AppCenterReactNative register]; no método delegado do didFinishLaunchingWithOptions aplicativo em AppDelegate.m. Adicione @import AppCenterAnalytics se estiver faltando nesse arquivo.

  • No Android, chame Analytics.enableManualSessionTracker(); antes de SoLoader.init no método onCreate em MainApplication.java. Adicione a importação com.microsoft.appcenter.analytics.Analytics se estiver ausente nesse arquivo.

Em seguida, você pode usar a startSession API em seu projeto React Native:

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.