Как продолжить фоновую задачу даже после того, как я убил приложение в ios swift4
Пожалуйста, проверьте код фонового выполнения, который я сделал ниже, мне нужно продолжать работать таймер в течение n раз, даже после того, как я убил приложение.
var backgroundTask: UIBackgroundTaskIdentifier = UIBackgroundTaskInvalid
override func viewDidLoad() {
super.viewDidLoad()
if isBgRunnerOn {
NotificationCenter.default.addObserver(self, selector: #selector(reinstateBackgroundTask), name: NSNotification.Name.UIApplicationDidBecomeActive, object: nil)
}
}
@objc func updateLabel() {
seconds += 1
timerLabel.text = "\(seconds)\(" Sec")"
print(seconds)
if UIApplication.shared.backgroundTimeRemaining < 5 {
reinstateBackgroundTask()
}
}
func runTimer() {
if isBgRunnerOn {
registerBackgroundTask()
}
timer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(updateLabel), userInfo: nil, repeats: true)
isTimerRunning = true
}
func registerBackgroundTask() {
backgroundTask = UIApplication.shared.beginBackgroundTask { [weak self] in
// after minimum time duration of background session (3 min).
self?.reinstateBackgroundTask()
}
assert(backgroundTask != UIBackgroundTaskInvalid)
}
func endBackgroundTask() {
UIApplication.shared.endBackgroundTask(backgroundTask)
backgroundTask = UIBackgroundTaskInvalid
}
@objc func reinstateBackgroundTask() {
if timer != nil && (backgroundTask == UIBackgroundTaskInvalid) {
registerBackgroundTask()
}
}
Как мне выполнить задачу в приложении завершено?. Как я это сделаю?