Saiba mais sobre dados de desempenho de renderização de tela (aplicativos Apple e Android)

O Monitoramento de desempenho usa rastreios para coletar dados sobre processos monitorados no seu aplicativo. Um rastreamento é um relatório que contém dados capturados entre dois momentos no seu aplicativo.

Para aplicativos Apple e Android, o Monitoramento de desempenho mede automaticamente o desempenho de renderização de diferentes telas do seu aplicativo. O Monitoramento de desempenho cria um rastreamento de renderização de tela para cada tela do seu aplicativo. Esses rastreamentos coletam e medem as seguintes métricas:

Quadros lentos ou congelados em seu aplicativo podem resultar em baixo desempenho do dispositivo, também conhecido como instabilidade ou atraso. A captura de métricas de quadros de renderização lenta e congelada pode ajudá-lo a identificar telas com baixo desempenho, proporcionando a capacidade de melhorar o desempenho de renderização do seu aplicativo.

Você pode visualizar dados de rastreamentos de renderização de tela na guia Renderização de tela da tabela de rastreamentos. A tabela de rastreamentos está localizada na parte inferior da página Desempenho do console do Firebase . Para obter mais informações, consulte Rastrear, visualizar e filtrar dados de desempenho .

Métricas coletadas por rastreamentos de renderização de tela

Esses rastreamentos são rastreamentos prontos para uso, portanto, não é possível adicionar métricas ou atributos personalizados a eles.

Os quadros de renderização lenta e os quadros congelados são calculados com uma taxa de atualização do dispositivo assumida de 60 Hz. Se a taxa de atualização de um dispositivo for inferior a 60 Hz, cada quadro terá um tempo de renderização mais lento porque menos quadros são renderizados por segundo. Tempos de renderização mais lentos podem fazer com que quadros mais lentos ou congelados sejam relatados porque mais quadros serão renderizados mais lentamente ou congelarão. No entanto, se a taxa de atualização de um dispositivo for superior a 60 Hz, cada quadro terá um tempo de renderização mais rápido. Isso pode fazer com que menos quadros lentos ou congelados sejam relatados. Esta é uma limitação atual no SDK do Monitoramento de Desempenho.

Quadros de renderização lenta

Essa métrica refere-se à porcentagem de sessões de usuário que apresentaram uma quantidade notável de renderização lenta em uma tela específica. Especificamente, esta métrica refere-se à porcentagem de instâncias de tela durante as quais mais de 50% dos quadros demoraram mais de 16 ms para serem renderizados.

Quadros congelados

Essa métrica refere-se à porcentagem de sessões de usuário que tiveram uma quantidade notável de quadros congelados em uma tela específica. Especificamente, esta métrica refere-se à porcentagem de instâncias de tela durante as quais mais de 0,1% dos quadros demoraram mais de 700 ms para serem renderizados.

Como são gerados os rastreamentos de renderização de tela?

Cada rastreamento de renderização de tela é identificado pelo nome do elemento de visualização em seu aplicativo. O cliente Performance Monitoring cria rastreamentos de renderização de tela para cada atividade ou fragmento usado pelo seu aplicativo.

Cada rastreamento de renderização de tela executa as seguintes ações:

  • Inicia para cada atividade e classe de fragmento quando o objeto se torna visível na tela. OnActivityStarted() para atividades e OnFragmentResume() para fragmentos.

  • Pára para cada atividade e classe de fragmento quando o objeto não está visível na tela. OnActivityStopped() para atividades e OnFragmentPaused() para fragmentos.

Rastreie, visualize e filtre dados de desempenho

Para visualizar dados de desempenho em tempo real, verifique se seu aplicativo usa uma versão do SDK do Monitoramento de desempenho compatível com o processamento de dados em tempo real. Saiba mais sobre dados de desempenho em tempo real .

Acompanhe as principais métricas em seu painel

Para saber a tendência de suas principais métricas, adicione-as ao quadro de métricas na parte superior do painel Desempenho . Você pode identificar regressões rapidamente vendo as alterações semanais ou verificando se as alterações recentes no seu código estão melhorando o desempenho.

uma imagem do quadro de métricas no painel do Firebase Performance Monitoring

Para adicionar uma métrica ao seu quadro de métricas, siga estas etapas:

  1. Acesse o painel Desempenho no console do Firebase.
  2. Clique em um cartão de métrica vazio e selecione uma métrica existente para adicionar ao seu quadro.
  3. Clique em em um cartão de métrica preenchido para obter mais opções, por exemplo, para substituir ou remover uma métrica.

O quadro de métricas mostra os dados de métricas coletados ao longo do tempo, tanto em formato gráfico quanto como uma variação percentual numérica.

Saiba mais sobre como usar o painel .

Veja o desempenho da tela no console

Para visualizar seus rastreamentos, acesse o painel Desempenho no console do Firebase, role para baixo até a tabela de rastreamentos e clique na subguia apropriada. A tabela exibe algumas métricas principais para cada rastreamento e você pode até classificar a lista pela alteração percentual de uma métrica específica.

O Monitoramento de desempenho fornece uma página de solução de problemas no Console do Firebase que destaca alterações de métricas, facilitando a abordagem rápida e minimizando o impacto de problemas de desempenho em seus aplicativos e usuários. Você pode usar a página de solução de problemas ao aprender sobre possíveis problemas de desempenho, por exemplo, nos seguintes cenários:

  • Você seleciona métricas relevantes no painel e percebe um grande delta.
  • Na tabela de rastreamentos, você classifica para exibir os maiores deltas na parte superior e vê uma alteração percentual significativa.
  • Você recebe um alerta por e-mail notificando sobre um problema de desempenho.

Você pode acessar a página de solução de problemas das seguintes maneiras:

  • No painel de métricas, clique no botão Visualizar detalhes da métrica .
  • Em qualquer cartão de métrica, selecione => Ver detalhes . A página de solução de problemas exibe informações sobre a métrica selecionada.
  • Na tabela de rastreamentos, clique em um nome de rastreamento ou em qualquer valor de métrica na linha associada a esse rastreamento.
  • Em um alerta por e-mail, clique em Investigar agora .

Ao clicar em um nome de rastreamento na tabela de rastreamentos, você poderá detalhar as métricas de interesse. Clique no Botão filtro para filtrar os dados por atributo, por exemplo:

uma imagem dos dados do Firebase Performance Monitoring sendo filtrados por atributo
  • Filtre por versão do aplicativo para visualizar dados sobre uma versão anterior ou mais recente
  • Filtre por dispositivo para saber como os dispositivos mais antigos lidam com seu aplicativo
  • Filtre por país para garantir que a localização do seu banco de dados não esteja afetando uma região específica

Saiba mais sobre como visualizar dados para seus rastreamentos .

Atributos de fragmento

Em aplicativos Android, você pode reutilizar fragmentos com outra atividade ou fragmento. O desempenho de um fragmento pode variar dependendo do fragmento ou da atividade em que o fragmento está sendo renderizado. Use os atributos a seguir para obter informações detalhadas sobre o desempenho de um fragmento no fragmento pai, com base na atividade ou no fragmento ao qual o fragmento está associado com:

uma imagem do painel de monitoramento de desempenho de métricas de fragmento
  • Hosting_activity — A atividade que hospeda o fragmento. Permite entender o desempenho do fragmento na atividade de hospedagem.
  • Parent_fragment — O fragmento pai do fragmento que você está investigando. Permite entender o desempenho do fragmento dentro do fragmento pai. Se não houver fragmentos pai, o atributo será definido como No Parent .

Próximos passos