Расширение содержимого уведомлений не отображается для нескольких названий категорий?

Я добавил пользовательское расширение содержимого удаленного уведомления в свой проект и добавил несколько категорий расширений в цель "Расширение содержимого уведомления" info.plist файл как следующий:

добавлены различные типы категорий действий уведомления для различных уведомлений в AppDelegate:

 func addRichRotificationActions() {
        let confirmAction = UNNotificationAction(identifier: "ConfirmAction", title: "Confirm", options: [.foreground])
        let cancelAction = UNNotificationAction(identifier: "CancelAction", title: "Cancel", options: [.destructive])
        let closeAction = UNNotificationAction(identifier: "CloseAction", title: "Close", options: [.foreground])

        let openTicketCategory = UNNotificationCategory(identifier: "OpenTicket", actions: [confirmAction, cancelAction], intentIdentifiers: [], options: [])
        let confirmTicketCategory = UNNotificationCategory(identifier: "ConfirmTicket", actions: [closeAction, cancelAction], intentIdentifiers: [], options: [])
        let closeTicketCategory = UNNotificationCategory(identifier: "CloseTicket", actions: [], intentIdentifiers: [], options: [])
        let cancelTicketCategory = UNNotificationCategory(identifier: "CancelTicket", actions: [], intentIdentifiers: [], options: [])

        UNUserNotificationCenter.current().setNotificationCategories([openTicketCategory, confirmTicketCategory, closeTicketCategory, cancelTicketCategory])
    }

Теперь я отправляю APNS JSON следующим образом:

Для Открытых билетов, получающих название категории как "OpenTicket":

[AnyHashable("default"): You have a new ticket, AnyHashable("aps"): {
    alert = "#8556 - New Booking for Mr. Tomas";
    badge = 1;
    category = OpenTicket;
    "mutable-content" = 1;
    sound = default;
}]

Для подтверждения билетов, получая название категории как "ConfirmTicket":

[AnyHashable("default"): You have a confirmed ticket, AnyHashable("aps"): {
    alert = "#8556 - Ticket Confirmed for Mr. Tomas";
    badge = 1;
    category = ConfirmTicket;
    "mutable-content" = 1;
    sound = default;
}]

и так далее.

Но, к сожалению, я получаю уведомление по умолчанию с различными кнопками действий, а не с пользовательским расширением содержимого уведомлений с другими действиями. Я не могу понять проблему. Как можно получить расширение содержимого уведомлений с различными действиями для удаленного уведомления?

1 ответ

Просто нужно сделать UNNotificationExtensionCategory как Array скорее, чем String в info.plist цели расширения содержания уведомления.