Comece com o Monitoramento de desempenho para Android

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).

  1. 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.

    (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")
    }
    
    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 ).

  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 .

  1. 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
    }
    
  2. 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'
        ...
    }
    
  3. 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.

  1. 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.

  2. 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

  1. Ative o registro de depuração para o Monitoramento de desempenho no momento da compilação adicionando um elemento <meta-data> ao arquivo AndroidManifest.xml do seu aplicativo, da seguinte forma:

    <application>
        <meta-data
          android:name="firebase_performance_logcat_enabled"
          android:value="true" />
    </application>
    
  2. Verifique suas mensagens de log em busca de mensagens de erro.

  3. 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
  4. 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
  5. 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