Antes de você começar
Adicione o Firebase ao seu projeto Android , caso ainda não o tenha feito.
Etapa 1 : adicione o SDK do Monitoramento de desempenho ao seu aplicativo
Depois de adicionar o SDK do Monitoramento de desempenho, o Firebase começa a coletar automaticamente dados para a renderização da tela do seu aplicativo e dados relacionados ao ciclo de vida do seu aplicativo (como horário de início do aplicativo ). Para permitir que o Firebase monitore solicitações de rede, você também deve adicionar o plugin Performance Monitoring Gradle (próxima etapa).
No arquivo Gradle do módulo (nível do aplicativo) (geralmente
<project>/<app-module>/build.gradle.kts
ou<project>/<app-module>/build.gradle
), adicione a dependência para o Monitoramento de desempenho biblioteca para Android. Recomendamos usar o Firebase Android BoM para controlar o controle de versão da biblioteca.dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:32.8.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") }
Ao usar o Firebase Android BoM , seu aplicativo sempre usará versões compatíveis das bibliotecas do Firebase Android.
Procurando um módulo de biblioteca específico para Kotlin? A partir de outubro de 2023 (Firebase BoM 32.5.0) , tanto os desenvolvedores Kotlin quanto os Java podem depender do módulo da biblioteca principal (para obter detalhes, consulte o FAQ sobre esta iniciativa ).(Alternativa) Adicionar dependências da biblioteca Firebase sem usar o BoM
Se você optar por não usar o Firebase BoM, deverá especificar cada versão da biblioteca do Firebase em sua linha de dependência.
Observe que se você usa várias bibliotecas do Firebase no seu aplicativo, é altamente recomendável usar a BoM para gerenciar as versões da biblioteca, o que garante que todas as versões sejam compatíveis.
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:20.5.2") }
Recompile seu aplicativo.
Etapa 2 : adicione o plug-in Gradle do Monitoramento de desempenho ao seu aplicativo
Depois de adicionar o plug-in Gradle do Monitoramento de desempenho, o Firebase inicia automaticamente a coleta de dados para solicitações de rede HTTP/S . O plug-in também permite instrumentar rastreamentos de código personalizados usando a anotação @AddTrace .
Em seu arquivo Gradle de nível raiz (nível de projeto) (
<project>/build.gradle.kts
ou<project>/build.gradle
), adicione o plug-in Gradle de monitoramento de desempenho: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.1" apply false // Add the dependency for the Performance Monitoring Gradle plugin id("com.google.firebase.firebase-perf") version "1.4.2" 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.1' apply false // Add the dependency for the Performance Monitoring Gradle plugin id 'com.google.firebase.firebase-perf' version '1.4.2' apply false }
No arquivo Gradle do módulo (nível do aplicativo) (geralmente
<project>/<app-module>/build.gradle.kts
ou<project>/<app-module>/build.gradle
), adicione o plug-in Gradle de monitoramento de desempenho: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 seu aplicativo.
Etapa 3 : Gerar eventos de desempenho para 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 inicial de dados.
Gere eventos alternando seu aplicativo entre segundo plano e primeiro plano várias vezes, interagindo com seu aplicativo navegando pelas telas e/ou acionando solicitações de rede.
Acesse o painel Desempenho do console do Firebase. Você deverá ver a exibição inicial dos dados em alguns minutos.
Se você não vir seus dados iniciais, revise as dicas de solução de problemas .
Etapa 4 : (opcional) visualizar mensagens de log para eventos de desempenho
Ative o registro de depuração para o Monitoramento de desempenho no momento da compilação adicionando um elemento
<meta-data>
ao arquivoAndroidManifest.xml
do seu aplicativo, da seguinte forma:<application> <meta-data android:name="firebase_performance_logcat_enabled" android:value="true" /> </application>
Verifique suas mensagens de log em busca de mensagens de erro.
O Monitoramento de desempenho marca suas mensagens de log com
FirebasePerformance
. Usando a filtragem logcat, você pode visualizar especificamente o rastreamento de duração e o registro de solicitações de rede HTTP/S executando o seguinte comando:adb logcat -s FirebasePerformance
Verifique os seguintes tipos de logs que indicam que o Monitoramento de Desempenho está registrando eventos de desempenho:
-
Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
-
Logging network request trace: URL
-
Clique no URL para visualizar seus dados no console do Firebase. Pode levar alguns instantes para que os dados sejam atualizados no painel.
Se seu aplicativo não estiver registrando eventos de desempenho, revise 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 seu aplicativo, você pode instrumentar rastreamentos de código personalizados .
Com um rastreamento de código personalizado, você pode medir quanto tempo leva para seu aplicativo 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 para um rastreamento de código personalizado é sua duração, mas você também pode adicionar métricas personalizadas, como ocorrências de cache e avisos de memória.
No seu código, você define o início e o fim de um rastreamento de código personalizado (e adiciona quaisquer métricas personalizadas desejadas) usando a API fornecida pelo SDK do Performance Monitoring. Para aplicativos Android, você também pode monitorar a duração de métodos específicos usando a anotação @AddTrace .
Visite Adicionar monitoramento para código específico para saber mais sobre esses recursos e como adicioná-los ao seu aplicativo.
Etapa 6 : implantar seu aplicativo e analisar os resultados
Depois de validar o Monitoramento de Desempenho usando um ou mais dispositivos de teste, você poderá implantar a versão atualizada do seu aplicativo para seus usuários.
Você pode monitorar os dados de desempenho no painel Desempenho do console do Firebase.
Problemas conhecidos
O plug-in Gradle v1.1.0 do 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ê vir esse erro, poderá:
Atualize o plugin Performance Monitoring para v1.1.1 ou posterior (o mais recente é v1.4.2).
Substitua a linha de dependência do plug-in do Performance Monitoring no arquivo Gradle de nível raiz (nível do projeto) (
<project>/build.gradle.kts
ou<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 Monitoramento de Desempenho relata o tamanho total da carga útil para solicitações de rede HTTP com base no valor definido no cabeçalho de comprimento de conteúdo HTTP. Este valor pode nem sempre ser preciso.
O Monitoramento de desempenho oferece suporte apenas ao processo principal em aplicativos Android com vários processos.
Próximos passos
Revise e execute o exemplo de código Android do Monitoramento de desempenho no GitHub .
Saiba mais sobre os dados coletados automaticamente pelo Monitoramento de Desempenho:
- Dados relacionados ao ciclo de vida do seu aplicativo, como horário de início do aplicativo
- Dados para renderização de tela no seu aplicativo
- Dados para solicitações de rede HTTP/S emitidas pelo seu aplicativo
Visualize, acompanhe e filtre seus dados de desempenho no Console do Firebase.
Adicione monitoramento para tarefas ou fluxos de trabalho específicos em seu aplicativo instrumentando rastreamentos de código personalizados .