Делегат UNUserNotificationCenter - userNotificationCenter:didReceiveNotificationResponse:withCompletionHandler: не вызыв ⇐ IOS
-
Гость
Делегат UNUserNotificationCenter - userNotificationCenter:didReceiveNotificationResponse:withCompletionHandler: не вызыв
Появляется ошибка ниже, когда локальное уведомление прослушивается и -userNotificationCenter:didReceiveNotificationResponse:withCompletionHandler: не вызывается для обработки действия касания уведомления. (К вашему сведению, приложение находится на переднем плане и это локальное уведомление)
Внимание: делегат UNUserNotificationCenter получил вызов -userNotificationCenter:didReceiveNotificationResponse:withCompletionHandler: но обработчик завершения никогда не вызывался. Код:
func RegisterForRemoteNotifications() { пусть центр = UNUserNotificationCenter.current() center.delegate = сам center.requestAuthorization(options: [.sound, .alert, .badge]) { (разрешено, ошибка) в если ошибка == ноль { DispatchQueue.main.async { UIApplication.shared.registerForRemoteNotifications() } } } } расширение PushNotificationManager: UNUserNotificationCenterDelegate { func userNotificationCenter (_ центр: UNUserNotificationCenter, уведомление willPresent: UNNotification, withCompletionHandlercompleteHandler: @escaping (UNNotificationPresentationOptions) -> Void) { print("Информация о пользователе = ",notification.request.content.userInfo) завершениеHandler([.alert, .badge, .sound]) } func userNotificationCenter (_ центр: UNUserNotificationCenter, ответ DidReceive: UNNotificationResponse, withCompletionHandlercompleteHandler: @escaping () -> Void) { пусть userInfo = response.notification.request.content.userInfo если приложениеLoaded { handleNotificationForActiveState (userInfo: userInfo) } еще { handleNotificationForInactiveState (userInfo: userInfo) } завершениеHandler() } } Появляется ошибка ниже, когда прослушивается локальное уведомление и -userNotificationCenter:didReceiveNotificationResponse:withCompletionHandler: не вызывается для обработки действия касания уведомления. (К вашему сведению, приложение находится на переднем плане и это локальное уведомление)
Внимание: делегат UNUserNotificationCenter получил вызов -userNotificationCenter:didReceiveNotificationResponse:withCompletionHandler: но обработчик завершения никогда не вызывался. Код:
func RegisterForRemoteNotifications() { пусть центр = UNUserNotificationCenter.current() center.delegate = сам center.requestAuthorization(options: [.sound, .alert, .badge]) { (разрешено, ошибка) в если ошибка == ноль { DispatchQueue.main.async { UIApplication.shared.registerForRemoteNotifications() } } } } расширение PushNotificationManager: UNUserNotificationCenterDelegate { func userNotificationCenter (_ центр: UNUserNotificationCenter, уведомление willPresent: UNNotification, withCompletionHandlercompleteHandler: @escaping (UNNotificationPresentationOptions) -> Void) { print("Информация о пользователе = ",notification.request.content.userInfo) завершениеHandler([.alert, .badge, .sound]) } func userNotificationCenter (_ центр: UNUserNotificationCenter, ответ DidReceive: UNNotificationResponse, withCompletionHandlercompleteHandler: @escaping () -> Void) { пусть userInfo = response.notification.request.content.userInfo если приложениеLoaded { handleNotificationForActiveState (userInfo: userInfo) } еще { handleNotificationForInactiveState (userInfo: userInfo) } завершениеHandler() } }
Появляется ошибка ниже, когда локальное уведомление прослушивается и -userNotificationCenter:didReceiveNotificationResponse:withCompletionHandler: не вызывается для обработки действия касания уведомления. (К вашему сведению, приложение находится на переднем плане и это локальное уведомление)
Внимание: делегат UNUserNotificationCenter получил вызов -userNotificationCenter:didReceiveNotificationResponse:withCompletionHandler: но обработчик завершения никогда не вызывался. Код:
func RegisterForRemoteNotifications() { пусть центр = UNUserNotificationCenter.current() center.delegate = сам center.requestAuthorization(options: [.sound, .alert, .badge]) { (разрешено, ошибка) в если ошибка == ноль { DispatchQueue.main.async { UIApplication.shared.registerForRemoteNotifications() } } } } расширение PushNotificationManager: UNUserNotificationCenterDelegate { func userNotificationCenter (_ центр: UNUserNotificationCenter, уведомление willPresent: UNNotification, withCompletionHandlercompleteHandler: @escaping (UNNotificationPresentationOptions) -> Void) { print("Информация о пользователе = ",notification.request.content.userInfo) завершениеHandler([.alert, .badge, .sound]) } func userNotificationCenter (_ центр: UNUserNotificationCenter, ответ DidReceive: UNNotificationResponse, withCompletionHandlercompleteHandler: @escaping () -> Void) { пусть userInfo = response.notification.request.content.userInfo если приложениеLoaded { handleNotificationForActiveState (userInfo: userInfo) } еще { handleNotificationForInactiveState (userInfo: userInfo) } завершениеHandler() } } Появляется ошибка ниже, когда прослушивается локальное уведомление и -userNotificationCenter:didReceiveNotificationResponse:withCompletionHandler: не вызывается для обработки действия касания уведомления. (К вашему сведению, приложение находится на переднем плане и это локальное уведомление)
Внимание: делегат UNUserNotificationCenter получил вызов -userNotificationCenter:didReceiveNotificationResponse:withCompletionHandler: но обработчик завершения никогда не вызывался. Код:
func RegisterForRemoteNotifications() { пусть центр = UNUserNotificationCenter.current() center.delegate = сам center.requestAuthorization(options: [.sound, .alert, .badge]) { (разрешено, ошибка) в если ошибка == ноль { DispatchQueue.main.async { UIApplication.shared.registerForRemoteNotifications() } } } } расширение PushNotificationManager: UNUserNotificationCenterDelegate { func userNotificationCenter (_ центр: UNUserNotificationCenter, уведомление willPresent: UNNotification, withCompletionHandlercompleteHandler: @escaping (UNNotificationPresentationOptions) -> Void) { print("Информация о пользователе = ",notification.request.content.userInfo) завершениеHandler([.alert, .badge, .sound]) } func userNotificationCenter (_ центр: UNUserNotificationCenter, ответ DidReceive: UNNotificationResponse, withCompletionHandlercompleteHandler: @escaping () -> Void) { пусть userInfo = response.notification.request.content.userInfo если приложениеLoaded { handleNotificationForActiveState (userInfo: userInfo) } еще { handleNotificationForInactiveState (userInfo: userInfo) } завершениеHandler() } }
Мобильная версия