Повторный UNTimeIntervalNotificationTrigger, который обрабатывает данные Dynami c каждый запуск - PullRequest
0 голосов
/ 17 апреля 2020

Я пытаюсь запускать повторяющиеся уведомления каждую минуту и ​​хочу, чтобы они были уникальными. В целях тестирования я пытаюсь обновить значок приложения до текущего часа, а также печатать полную дату внутри отправленного мной текста уведомления.

Однако, похоже, что мой setupContent () вычислен во время выполнения и, таким образом, каждый раз выдает мне одно и то же уведомление, вместо того, чтобы каждый раз печатать новую дату.

Возможно ли сделать это решение динамическим c (запуск setupContent () точно при запуске уведомления) вместо stati c, как это сейчас кажется?

Пример кода:

func addNotificationRequest() {
    let trigger = UNTimeIntervalNotificationTrigger(timeInterval: 60, repeats: true)
    let request = UNNotificationRequest(identifier: UUID().uuidString, content: setupContent(), trigger: trigger)

    UNUserNotificationCenter.current().add(request) { error in
        guard error == nil else { return }
        print("Notification scheduled")
    }
}

func setupContent() -> UNNotificationContent {
    let content: UNMutableNotificationContent = UNMutableNotificationContent()

    let date = Date()
    let calendar = Calendar.current

    let minutes = calendar.component(.minute, from: date)
    content.title = "Date when notification was fired: \(date)"
    content.badge = minutes as NSNumber

    return content
}

Заранее спасибо.

...