Antes de começar
Adicione o Firebase ao seu projeto da Apple caso ainda não tenha feito isso.
Etapa 1: adicionar o Performance Monitoring ao app
Depois que você adiciona o SDK do Performance Monitoring, o Firebase começa a coletar automaticamente dados sobre a renderização de tela do app, incluindo os dados relacionados ao ciclo de vida do app (como o horário de início do app) e os dados de solicitações de rede HTTP/S.
Use o Swift Package Manager para instalar e gerenciar as dependências do Firebase.
- No Xcode, com seu projeto do app aberto, navegue até File > Add Packages.
- Quando solicitado, adicione o repositório do SDK do Firebase para as plataformas Apple:
- Escolha a biblioteca Performance Monitoring.
- Adicione a sinalização
-ObjC
à seção Outras sinalizações do vinculador das configurações de compilação do destino. - Quando terminar, o Xcode vai começar a resolver e fazer o download das dependências em segundo plano automaticamente.
https://github.com/firebase/firebase-ios-sdk.git
Em seguida, configure o módulo do Firebase:
- Importe o módulo
FirebaseCore
noUIApplicationDelegate
, assim como qualquer outro módulo do Firebase usado pelo delegado do app. Por exemplo, para usar Cloud Firestore, Authentication e:SwiftUI
import SwiftUI import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Swift
import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Objective-C
@import FirebaseCore; @import FirebaseFirestore; @import FirebaseAuth; // ...
- Configure uma
instância compartilhada do
FirebaseApp
no métodoapplication(_:didFinishLaunchingWithOptions:)
do delegado do app:SwiftUI
// Use Firebase library to configure APIs FirebaseApp.configure()
Swift
// Use Firebase library to configure APIs FirebaseApp.configure()
Objective-C
// Use Firebase library to configure APIs [FIRApp configure];
- Se você estiver usando a SwiftUI, crie um delegado do aplicativo e o anexe
ao struct
App
viaUIApplicationDelegateAdaptor
ouNSApplicationDelegateAdaptor
. Também é necessário desativar o swizzling do delegado do app. Para mais informações, consulte as instruções da SwiftUI.SwiftUI
@main struct YourApp: App { // register app delegate for Firebase setup @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }
-
Recompile o app.
Etapa 2: 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.
Continue desenvolvendo o app usando um simulador ou dispositivo de teste.
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 3: (opcional) ver se há eventos de desempenho nas mensagens de registro
Ative a geração de registros de depuração da seguinte maneira:
- No Xcode (versão mínima 15.2), selecione Product > Scheme > Edit scheme.
- Selecione Run no menu à esquerda e depois a guia Arguments.
- Na seção Arguments Passed on Launch, adicione
-FIRDebugEnabled
.
Verifique se há mensagens de erro nas mensagens de registro.
O Performance Monitoring marca as mensagens de registro com
Firebase/Performance
para que seja possível filtrar as mensagens de registro.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 4 (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.
Acesse Adicionar monitoramento para códigos específicos para saber mais sobre esses recursos e como adicioná-los ao seu app.
Etapa 5: implantar seu app e analisar os resultados
Depois de validar o Performance Monitoring usando o simulador Xcode e um ou mais dispositivos de teste, será possível implantar a versão atualizada do seu app para os usuários.
É possível monitorar os dados de desempenho no painel Desempenho do console do Firebase.
Problemas conhecidos
- O Performance Monitoring tem problemas de compatibilidade conhecidos com o GTMSQLite. Recomendamos não usar o Performance Monitoring com apps que usam o GTMSQLite.
- O swizzling de métodos após chamar
FirebaseApp.configure()
pode interferir no SDK do Performance Monitoring. - Problemas conhecidos no simulador do iOS 8.0 a 8.2 impedem o Performance Monitoring de capturar eventos de desempenho. Esses problemas são corrigidos no simulador de iOS 8.3 e versões posteriores.
- As conexões estabelecidas usando o
backgroundSessionConfiguration
da NSURLSession terão tempos de conexão mais longos do que o esperado. Essas conexões são executadas fora do processo, e o tempo reflete os eventos de callback no processo.
Próximas etapas
Veja e execute o exemplo de código do iOS 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.