WatchOS Notifications Firing Late

We have a watchos app that uses notifications to display time sensitive information to the users. We are using UNTimeIntervalNotificationTrigger(timeInterval: 1, repeats: false), our usernotification center looks like this

func userNotificationCenter(_ center: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) {

        print("It got here to showing the notifications and this is when it is shown: \(Date()) and this is the type of notification: \(notification.request.identifier)")
        completionHandler([ .list, .sound, .banner ])
        
    }.

The problem is that the usernotification center is called correctly but no notification is given, every time 13 seconds later it is called twice again and only then does the notification display to the users.

I have tried changing the type of trigger for the notification but even that did not get rid of the thirteen second delay.

Replies

iOS decides if to forward the notification to a >connected watch< based on a number of factors such as does the watch have it's own token in order to get messages directly etc. https://developer.apple.com/documentation/watchos-apps/taking-advantage-of-notification-forwarding?changes=_9 https://developer.apple.com/documentation/watchos-apps/notifications?changes=_9 https://developer.apple.com/documentation/watchos-apps/enabling-and-receiving-notifications?changes=_9