Я не уверен, что вы можете получить эту информацию на экране блокировки:
Позвольте мне рассказать вам весь процесс Как достичь точно такой же функциональности
который есть в приложении Charge Alarm Это действительно просто : Следуйте за этим: ??
Шаг 1:
Вам нужно установить Background Fetch
ON в возможностях вашего проекта,
Шаг 2:
Включение контроля батареи: UIDevice.current.isBatteryMonitoringEnabled = true
в вашем AppDelegate.
Шаг 3:
Получить уровень заряда батареи:
var batteryLevel : Float {
get {
return UIDevice.current.batteryLevel
}
}
}
Шаг 4:
Добавьте Observer в viewDidLoad()
вашего BaseViewController или любого другого ViewController:
override func viewDidLoad(_ animated: Bool) {
super.viewDidLoad()
NotificationCenter.default.addObserver(self, selector: #selector(batteryLevelDidChange(_:)), name: NSNotification.Name.UIDeviceBatteryLevelDidChange, object: nil)
}
func batteryLevelDidChange(_ notify:Notification){
// write code to post a local notification on lock screen with text like : " YOUR DEVICE IS NOW AT xx% "
}
Теперь для настройки фоновых режимов: См. Это
Шаг 5:
Для локальной настройки уведомлений: См. Это
Вот и все, вы создали ту же функциональность, если у вас есть какие-либо проблемы, и я отвечу как можно раньше.