Partilhar via


Análise do App Center (React Native)

Importante

O Visual Studio App Center foi desativado em 31 de março de 2025, exceto para os recursos de Análise e Diagnóstico, que continuarão a ter suporte até 30 de junho de 2026. Mais informações.

O App Center Analytics 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ões e as propriedades do dispositivo, como modelo, versão do sistema operacional, etc. Você pode definir seus próprios eventos personalizados para medir coisas que são 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 ainda não configurou o SDK em seu aplicativo.

Informações da sessão e do dispositivo

Depois de adicionar o App Center Analytics ao seu aplicativo e o SDK ser iniciado, ele rastreia automaticamente as sessões e as 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 seus usuários e o aplicativo.

Depois de iniciar o SDK, use o trackEvent método para monitorizar os 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 de propriedade de evento e valor de propriedade de 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' });

Esta função retorna uma promessa, o caso de sucesso retorna uma cadeia de caracteres vazia e o caso de erro retorna o erro.

As propriedades para eventos são opcionais; Se você quiser apenas acompanhar um evento, use isso em vez disso:

Analytics.trackEvent('Video clicked');

Habilitar ou desabilitar o App Center Analytics em tempo de execução

Você pode ativar e desativar o App Center Analytics em tempo de execução. Se você desativá-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 em void.

Para habilitar o App Center Analytics novamente, use a mesma API, mas passe true como parâmetro.

await Analytics.setEnabled(true);

O estado é persistido no armazenamento do dispositivo em todas as inicializações de aplicativos.

Verifique se o App Center Analytics está ativado

Você também pode verificar se o App Center Analytics está habilitado ou não.

const enabled = await Analytics.isEnabled();

Esta função retorna uma promessa que se resolve como um boolean.

Aguarde até que o JS habilite o App Center Analytics

Se você deseja coletar informações de análise para os usuários do seu aplicativo, mas deseja obter permissão de usuário primeiro, você tem a opção de não habilitar a análise na inicialização, mas esperar até o momento certo e habilitá-la em 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 qualquer informação seja enviada ao App Center (até mesmo informações básicas da sessão), você deve primeiro habilitar o App Center Analytics adicionando a seguinte linha de código:

await Analytics.setEnabled(true);

Gerenciar sessão de início

Por padrão, o 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 o lançamento de um novo aplicativo, o ID da sessão será regenerado.

Para configurar o SDK para acompanhar a sessão manualmente, você precisa usar as APIs nativas do Analytics enableManualSessionTracker :

  • No iOS, chame [MSACAnalytics enableManualSessionTracker]; antes de [AppCenterReactNative register]; no método delegado da aplicação em didFinishLaunchingWithOptions. Adicione @import AppCenterAnalytics se faltar nesse arquivo.

  • No Android, chame Analytics.enableManualSessionTracker(); antes de SoLoader.init no método onCreate em MainApplication.java. Adicione o import com.microsoft.appcenter.analytics.Analytics caso esteja ausente nesse ficheiro.

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. Quando o armazenamento estiver cheio, o SDK começará a descartar logs antigos para abrir espaço para os novos logs. Assim que o dispositivo tiver acesso à Internet de volta, o SDK enviará logs no lote de 50 ou após cada 6 segundos.

Registo de eventos 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 um máximo de três lotes enviados em paralelo.

Lógica de repetição e retrocesso

O SDK do App Center suporta novas tentativas de back-off em erros de rede recuperáveis. Abaixo está a lógica de reintentar:

  • 3 tentativas no máximo por solicitação.
  • Cada solicitação tem sua própria máquina de estado de repetição.
  • Todos os canais de transmissão são desativados (até o próximo processo do aplicativo) depois que uma solicitação esgota todas as suas tentativas.

Lógica de recuo

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