Проверка уровня заряда фона iOS не работает - PullRequest
0 голосов
/ 22 октября 2019

Я пытаюсь решить простой случай на iOS, но он все еще выглядит неразрешимым. Я пытаюсь отслеживать уровень заряда батареи в моем приложении, когда приложение находится в фоновом режиме. Когда это на переднем плане - все отлично работает. Но в фоновом режиме это не работает (я хочу, чтобы всплывающее предупреждение и уведомление также появлялись, когда приложение в фоновом режиме + воспроизводит музыку как сигнал тревоги).

Я пытался сделать следующее: 1. Добавить "Возможности «Фоновые режимы» (в частности «Фоновая выборка» и «Фоновая обработка») 2. Просто проверьте это с помощью функции обратного вызова

    @objc func batteryLevelDidChange(notification: Notification) {
    if (isEnabled) {
        if(Int((UIDevice.current.batteryLevel) * 100)) <= currPercentage {
            let request = buildNotifications()
            triggerNotificaiton(request)
            showAlert()
        }
    }
    NotificationCenter.default.addObserver(self, selector: #selector(batteryLevelDidChange), name: UIDevice.batteryLevelDidChangeNotification, object: nil)

Даже я пытался использовать таймер:

timer =  Timer.scheduledTimer(
  timeInterval: TimeInterval(5),
  target      : self,
  selector    : #selector(ViewController.runBatteryCheck),
  userInfo    : nil,
  repeats     : true)
}

Кто-нибудь сталкивался с такими случаями?

...