Antes de que empieces
Si aún no lo has hecho, agrega Firebase a tu proyecto de Apple .
Paso 1 : agregue la supervisión del rendimiento a su aplicación
Después de agregar el SDK de monitoreo de rendimiento, Firebase comienza automáticamente a recopilar datos para la representación de la pantalla de tu aplicación, datos relacionados con el ciclo de vida de tu aplicación (como la hora de inicio de la aplicación ) y datos para las solicitudes de red HTTP/S .
Utilice Swift Package Manager para instalar y administrar las dependencias de Firebase.
- En Xcode, con el proyecto de su aplicación abierto, navegue hasta Archivo > Agregar paquetes .
- Cuando se le solicite, agregue el repositorio SDK de las plataformas Firebase Apple:
- Elija la biblioteca de Monitoreo de rendimiento.
- Agregue el indicador
-ObjC
a la sección Otros indicadores del vinculador de la configuración de compilación de su objetivo. - Cuando termine, Xcode comenzará automáticamente a resolver y descargar sus dependencias en segundo plano.
https://github.com/firebase/firebase-ios-sdk.git
A continuación, configure el módulo Firebase:
- Importe el módulo
FirebaseCore
en suUIApplicationDelegate
, así como cualquier otro módulo de Firebase que utilice el delegado de su aplicación. Por ejemplo, para usar Cloud Firestore y autenticación:Interfaz de usuario rápida
import SwiftUI import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
Rápido
import FirebaseCore import FirebaseFirestore import FirebaseAuth // ...
C objetivo
@import FirebaseCore; @import FirebaseFirestore; @import FirebaseAuth; // ...
- Configure una instancia compartida
FirebaseApp
en el métodoapplication(_:didFinishLaunchingWithOptions:)
del delegado de su aplicación:Interfaz de usuario rápida
// Use Firebase library to configure APIs FirebaseApp.configure()
Rápido
// Use Firebase library to configure APIs FirebaseApp.configure()
C objetivo
// Use Firebase library to configure APIs [FIRApp configure];
- Si está utilizando SwiftUI, debe crear un delegado de aplicación y adjuntarlo a su estructura
App
medianteUIApplicationDelegateAdaptor
oNSApplicationDelegateAdaptor
. También debes desactivar el cambio de delegados de aplicaciones. Para obtener más información, consulte las instrucciones de SwiftUI .Interfaz de usuario rápida
@main struct YourApp: App { // register app delegate for Firebase setup @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }
Vuelva a compilar su aplicación.
Paso 2 : generar eventos de rendimiento para la visualización de datos iniciales
Firebase comienza a procesar los eventos cuando agrega correctamente el SDK a su aplicación. Si todavía estás desarrollando localmente, interactúa con tu aplicación para generar eventos para la recopilación y el procesamiento de datos iniciales.
Continúe desarrollando su aplicación utilizando un simulador o dispositivo de prueba.
Genere eventos cambiando su aplicación entre fondo y primer plano varias veces, interactuando con su aplicación navegando entre pantallas y/o activando solicitudes de red.
Vaya al panel de rendimiento de Firebase console. Deberías ver tus datos iniciales en unos minutos.
Si no ve una visualización de sus datos iniciales, revise los consejos para la solución de problemas .
Paso 3 : (Opcional) Ver mensajes de registro para eventos de rendimiento
Habilite el registro de depuración, de la siguiente manera:
- En Xcode (mínimo v14.1), seleccione Producto > Esquema > Editar esquema .
- Seleccione Ejecutar en el menú de la izquierda, luego seleccione la pestaña Argumentos .
- En la sección Argumentos pasados en el lanzamiento , agregue
-FIRDebugEnabled
.
Revise sus mensajes de registro para ver si hay mensajes de error.
Performance Monitoring etiqueta sus mensajes de registro con
Firebase/Performance
para que pueda filtrar sus mensajes de registro.Compruebe los siguientes tipos de registros que indican que Performance Monitoring está registrando eventos de rendimiento:
-
Logging trace metric: TRACE_NAME , FIREBASE_PERFORMANCE_CONSOLE_URL
-
Logging network request trace: URL
-
Haga clic en la URL para ver sus datos en Firebase console. Es posible que los datos tarden unos momentos en actualizarse en el panel.
Si su aplicación no registra eventos de rendimiento, revise las sugerencias para la solución de problemas .
Paso 4 : (Opcional) Agregue monitoreo personalizado para código específico
Para monitorear los datos de rendimiento asociados con un código específico en su aplicación, puede instrumentar seguimientos de código personalizados .
Con un seguimiento de código personalizado, puede medir cuánto tiempo le toma a su aplicación completar una tarea específica o un conjunto de tareas, como cargar un conjunto de imágenes o consultar su base de datos. La métrica predeterminada para un seguimiento de código personalizado es su duración, pero también puede agregar métricas personalizadas, como aciertos de caché y advertencias de memoria.
En su código, usted define el principio y el final de un seguimiento de código personalizado (y agrega las métricas personalizadas que desee) utilizando la API proporcionada por el SDK de Performance Monitoring.
Visite Agregar monitoreo para obtener código específico y obtener más información sobre estas funciones y cómo agregarlas a su aplicación.
Paso 5 : implemente su aplicación y luego revise los resultados
Después de haber validado la supervisión del rendimiento mediante el simulador de Xcode y uno o más dispositivos de prueba, puede implementar la versión actualizada de su aplicación para sus usuarios.
Puede monitorear los datos de rendimiento en el panel de rendimiento de Firebase console.
Problemas conocidos
- Performance Monitoring tiene problemas conocidos de compatibilidad con GTMSQLite. Recomendamos no usar Performance Monitoring con aplicaciones que usan GTMSQLite.
- El método que cambia después de llamar
FirebaseApp.configure()
puede interferir con el SDK de Performance Monitoring. - Los problemas conocidos con el simulador de iOS 8.0-8.2 impiden que Performance Monitoring capture eventos de rendimiento. Estos problemas se solucionan en el Simulador de iOS 8.3 y versiones posteriores.
- Las conexiones establecidas utilizando
backgroundSessionConfiguration
de NSURLSession mostrarán tiempos de conexión más largos de lo esperado. Estas conexiones se ejecutan fuera de proceso y los tiempos reflejan eventos de devolución de llamada en proceso.
Próximos pasos
Revise y ejecute el ejemplo de código de iOS de Performance Monitoring en GitHub .
Obtenga más información sobre los datos recopilados automáticamente por Performance Monitoring:
- Datos relacionados con el ciclo de vida de su aplicación, como la hora de inicio de la aplicación
- Datos para la representación de pantalla en su aplicación
- Datos para solicitudes de red HTTP/S emitidas por su aplicación
Vea, realice un seguimiento y filtre sus datos de rendimiento en Firebase console.
Agregue monitoreo para tareas o flujos de trabajo específicos en su aplicación mediante la instrumentación de seguimientos de código personalizados .