Antes de começar
Adicione o Firebase ao projeto para Android, caso ainda não tenha feito isso.
Etapa 1: adicionar o SDK do Performance Monitoring ao seu app
Depois que o SDK do Performance Monitoring for adicionado, o Firebase começará a coletar dados automaticamente sobre a renderização de tela do app, além de coletar dados relacionados ao ciclo de vida do app (como o horário de início do app). Para permitir que o Firebase monitore solicitações de rede, também é preciso adicionar o plug-in do Gradle para o Performance Monitoring (próxima etapa).
- No arquivo Gradle do módulo (nível do app) (geralmente - <project>/<app-module>/build.gradle.ktsou- <project>/<app-module>/build.gradle), adicione a dependência da biblioteca do Performance Monitoring para Android. Recomendamos o uso do Firebase Android BoM para lidar com o controle de versões da biblioteca.- dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:34.4.0")) // Add the dependency for the Performance Monitoring library // When using the BoM, you don't specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-perf") } - Com o Firebase Android BoM, seu app sempre vai usar versões compatíveis das bibliotecas do Firebase para Android. - (Alternativa) Adicionar dependências das bibliotecas do Firebase sem usar o BoM - Se você preferir não usar o Firebase BoM, especifique cada versão das bibliotecas do Firebase na linha de dependência correspondente. - Se você usa várias bibliotecas do Firebase no app, recomendamos utilizar o BoM para gerenciar as versões delas, porque isso ajuda a garantir a compatibilidade de todas as bibliotecas. - dependencies { // Add the dependency for the Performance Monitoring library // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation("com.google.firebase:firebase-perf:22.0.2") } 
- Recompile o app. 
Etapa 2: adicionar ao seu app o plug-in do Gradle para o Performance Monitoring
Depois que o plug-in do Gradle para o Performance Monitoring for adicionado, o Firebase começará a coletar dados automaticamente sobre as solicitações de rede HTTP/S. Com esse plug-in, também é possível instrumentar traces de código personalizado usando a anotação @AddTrace.
- No arquivo do Gradle no nível raiz (para envolvidos no projeto) ( - <project>/build.gradle.ktsou- <project>/build.gradle), adicione o plug-in do Gradle para o Performance Monitoring:- Kotlin- plugins { // To benefit from the latest Performance Monitoring plugin features, // update your Android Gradle plugin dependency to at least v3.4.0 id("com.android.application") version "7.3.0" apply false // Make sure that you have the Google services Gradle plugin dependency id("com.google.gms.google-services") version "4.4.4" apply false // Add the dependency for the Performance Monitoring Gradle plugin id("com.google.firebase.firebase-perf") version "2.0.1" apply false } - Groovy- plugins { // To benefit from the latest Performance Monitoring plugin features, // update your Android Gradle plugin dependency to at least v3.4.0 id 'com.android.application' version '7.3.0' apply false // Make sure that you have the Google services Gradle plugin dependency id 'com.google.gms.google-services' version '4.4.4' apply false // Add the dependency for the Performance Monitoring Gradle plugin id 'com.google.firebase.firebase-perf' version '2.0.1' apply false } 
- No arquivo do Gradle do módulo (nível do app) (geralmente - <project>/<app-module>/build.gradle.ktsou- <project>/<app-module>/build.gradle), adicione o plug-in do Gradle para o Performance Monitoring:- Kotlin- plugins { id("com.android.application") // Make sure that you have the Google services Gradle plugin id("com.google.gms.google-services") // Add the Performance Monitoring Gradle plugin id("com.google.firebase.firebase-perf") ... } - Groovy- plugins { id 'com.android.application' // Make sure that you have the Google services Gradle plugin id 'com.google.gms.google-services' // Add the Performance Monitoring Gradle plugin id 'com.google.firebase.firebase-perf' ... } 
- Recompile o app. 
Etapa 3: gerar eventos de desempenho para a exibição inicial de dados
O Firebase começa a processar os eventos quando você adiciona o SDK ao seu aplicativo. Se você ainda estiver desenvolvendo localmente, interaja com seu aplicativo para gerar eventos para coleta e processamento de dados iniciais.
- Gere eventos alternando o plano de fundo e o primeiro plano do app várias vezes. Interaja com o app navegando pelas telas e/ou acionando solicitações de rede. 
- Acesse o painel Desempenho do console do Firebase. Você verá sua exibição de dados inicial em alguns minutos. - Se você não vir uma exibição dos seus dados iniciais, veja as dicas de solução de problemas. 
Etapa 4 (opcional): ver se há eventos de desempenho nas mensagens de registro
- Ative a geração de registros de depuração do Performance Monitoring no tempo de build. Para fazer isso, adicione um elemento - <meta-data>ao arquivo- AndroidManifest.xmldo seu app:- <application> <meta-data android:name="firebase_performance_logcat_enabled" android:value="true" /> </application>
- Verifique se há mensagens de erro nas mensagens de registro. 
- O Performance Monitoring marca as mensagens de registro com - FirebasePerformance. Ao usar o filtro logcat, você vê especificamente a geração de registros do trace de duração e as solicitações de rede HTTP/S. Basta executar o seguinte comando:- adb logcat -s FirebasePerformance 
- Verifique os seguintes tipos de registros que indicam que o Performance Monitoring está registrando eventos de desempenho: - Logging trace metric: TRACE_NAME, FIREBASE_PERFORMANCE_CONSOLE_URL
- Logging network request trace: URL
 
- Clique no URL para ver seus dados no Console do Firebase. Pode levar alguns instantes até que os dados sejam atualizados no painel. 
Se o app não estiver registrando eventos de desempenho, veja as dicas de solução de problemas.
Etapa 5 (opcional): adicionar monitoramento personalizado para código específico
Para monitorar os dados de desempenho associados a um código específico no app, instrumente traces de código personalizados.
Com um trace de código personalizado, é possível avaliar quanto tempo o app leva para concluir uma tarefa específica ou um conjunto de tarefas, como carregar um conjunto de imagens ou consultar seu banco de dados. A métrica padrão de um trace de código personalizado é a duração, mas também é possível adicionar métricas personalizadas, como ocorrências em cache e avisos de memória.
No seu código, você define o início e o fim de um trace de código personalizado (e adiciona a métrica personalizada que quiser) usando a API fornecida pelo SDK do Performance Monitoring. Em apps Android, também é possível monitorar a duração de métodos específicos usando a anotação @AddTrace.
Acesse Adicionar monitoramento para códigos específicos para saber mais sobre esses recursos e como adicioná-los ao seu app.
Etapa 6: implantar seu app e analisar os resultados
Depois de validar o Performance Monitoring usando um ou mais dispositivos de teste, será possível implantar a versão atualizada do app para os usuários.
É possível monitorar os dados de desempenho no painel Desempenho do console do Firebase.
Problemas conhecidos
- O plug-in do Gradle v1.1.0 para o Performance Monitoring pode causar uma incompatibilidade nas dependências do Guava, resultando no seguinte erro: - Error:Execution failed for task ':app:packageInstantRunResourcesDebug'. > com.google.common.util.concurrent.MoreExecutors.directExecutor()Ljava/util/concurrent/Executor; - Se você encontrar esse erro, faça o seguinte: - Faça upgrade do plug-in do Performance Monitoring para a v1.1.1 ou posterior. A versão mais recente é a v2.0.1. 
- Substitua a linha de dependência do plug-in do Performance Monitoring no arquivo do Gradle no nível raiz (para envolvidos no projeto) ( - <project>/build.gradle.ktsou- <project>/build.gradle) da seguinte maneira:- Kotlin- buildscript { // ... dependencies { // ... // Replace the standard Performance Monitoring plugin dependency line, as follows: classpath("com.google.firebase:perf-plugin:1.1.0") { exclude(group = "com.google.guava", module = "guava-jdk5") } } } - Groovy- buildscript { // ... dependencies { // ... // Replace the standard Performance Monitoring plugin dependency line, as follows: classpath('com.google.firebase:perf-plugin:1.1.0') { exclude group: 'com.google.guava', module: 'guava-jdk5' } } } 
 
- O Performance Monitoring informa o tamanho total do payload para solicitações de rede HTTP com base no valor definido no cabeçalho HTTP content-length. Esse valor pode não ser sempre exato. 
- O Performance Monitoring é compatível apenas com o processo principal em apps Android de vários processos. 
Próximas etapas
- Veja e execute o exemplo de código do Android para o Performance Monitoring no GitHub 
- Saiba mais sobre os dados coletados automaticamente pelo Performance Monitoring: - Dados relacionados ao ciclo de vida do app, como o horário de início.
- Dados para renderização de tela no app.
- Dados para solicitações de rede HTTP/S emitidos pelo app.
 
- Visualize, acompanhe e filtre os dados de desempenho no console do Firebase. 
- Adicione o monitoramento para tarefas ou fluxos de trabalho específicos no app instrumentando traces de código personalizados.