iOS – Swift – Devolución de llamada cuando el teléfono se enchufa

Tengo una aplicación de Android que utiliza un BroadcastReceiver para versiones anteriores de Android y una implementación basada en JobScheduler para Android 5.0+ que inicia mi aplicación automáticamente cuando el teléfono se conecta al cargador (es decir, ejecuta un IntentService para procesar algunos files).

Quiero poder hacer lo mismo en iOS (en Swift). He encontrado muy poca búsqueda en Google y en este sitio, creo que tal vez NSNotificationCenter esté relacionado con esto, pero aún no lo sé.

Entonces, ¿hay un equivalente a esto en iOS?

Gracias.

En iOS, no tenemos el mismo acceso a nivel de dispositivo en todo momento como lo haríamos en Android. Nuestras aplicaciones solo pueden recibir notifications como el estado de la batería cuando no se han terminado.

Cuando su aplicación tenga el primer plano, intente usar el código a continuación para acceder al estado de la batería del dispositivo.

// Begins battery state monitoring // UIDevice.currentDevice().batteryMonitoringEnabled = true // Check for battery's current status // if (UIDevice.currentDevice().batteryState != .Unplugged) { print("Device is plugged in.") } 

También puede ejecutar el siguiente código para comprobar el estado de la batería del dispositivo en los times establecidos cuando su aplicación llegue al background. NOTA: lo más probable es que lo rechace desde la versión de App Store.

 func applicationDidEnterBackground(application: UIApplication) { // Begins battery state monitoring // UIDevice.currentDevice().batteryMonitoringEnabled = true // Schedules NSTimer with intervals of 10 seconds // NSTimer.scheduledTimerWithTimeInterval(10, target: self, selector: #selector(batteryCheck), userInfo: nil, repeats: true) } func batteryCheck() { if (UIDevice.currentDevice().batteryState != .Unplugged) { print("Device is charging.") } else { print("Device is NOT charging.") } }