我正在尝试解决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)
}
有人遇到过这种情况吗?