If you like this article, considere buy me a cofee! 😉
Crypto donation button by NOWPayments

MetricKit en un nuevo framework, introducido en iOS 13 (WWDC2019), con el que se pretende recopilar información (métricas) sobre el comportamiento de la batería y el rendimiento de las aplicaciones. Para una aplicación registrada se recibirán informes del comportamiento de dicha aplicación una ves al día por norma general.

Batería

Las métricas de la batería incluyen, entre otros parámetros:

  • El estado de la red móvil.
  • Las transferencia a través de internet.
  • El uso de la CPU.
  • El uso de la GPU.
  • La energía utilizada para mostrar la aplicación en la pantalla.
  • El uso de funciones de ubicación del dispositivo.

Rendimiento

Desde el punto de vista del rendimiento, se obtienen métricas, por ejemplo, sobre:

  • El tiempo que tarda la aplicación en abrirse (launch time).
  • La respuesta de la aplicación con la interacción del usuario.
  • La cantidad de tiempo que la aplicación está activa.
  • El uso de memoria y de disco.

Uso

Para poder recibir informes de métricas, necesitamos añadir una suscripción a MXMetricManager (por ejemplo en la clase AppDelegate):

class AppDelegate: UIResponder, UIApplicationDelegate, MXMetricManagerSubscriber {

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        let shared = MXMetricManager.shared
        shared.add(self)

        return true
    }

    func applicationWillTerminate(_ application: UIApplication) {
        MXMetricManager.shared.remove(self)
    }

    // Receive daily metrics
    func didReceive(_ payloads: [MXMetricPayload]) {
       // Process metrics
    }
}

El método didReceive recibe un array que contiene la información de las últimas 24 horas (y de toda aquella información que no se haya podido recibir anteriormente).


0 comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Sígueme en Feedly