Push-уведомления с каруселью изображений для iOS
Протокол UNNotificationContentExtension предоставляет точку входа для расширения контента уведомлений, которое отображает пользовательский интерфейс для уведомлений вашего приложения.
1. Добавьте расширение контента уведомлений
Anchor link toВ Xcode выберите File > New > Target…

Выберите Notification Content Extension

Назовите его NotificationContentExtension

2. Добавьте код в ваше приложение
Anchor link toСкачайте PWNotificationExtension с Github и замените PWNotificationContentExtension в вашем Xcode-проекте на тот же файл с Github.

3. Категория уведомлений
Anchor link toДобавьте приведенный ниже код в ваш файл AppDelegate.swift
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
if #available(iOS 10.0, *) { let options: UNAuthorizationOptions = [.alert] UNUserNotificationCenter.current().requestAuthorization(options: options) { (authorized, error) in if authorized { let categoryIdentifier = "PWNotificationCarousel" let carouselNext = UNNotificationAction(identifier: "PWNotificationCarousel.next", title: "➡️ RIGHT", options: []) let carouselPrevious = UNNotificationAction(identifier: "PWNotificationCarousel.previous", title: "⬅️ LEFT", options: []) let carouselCategory = UNNotificationCategory(identifier: categoryIdentifier, actions: [carouselNext, carouselPrevious], intentIdentifiers: [], options: []) UNUserNotificationCenter.current().setNotificationCategories([carouselCategory]) } } }
return true }4. Отправьте push-уведомление
Anchor link toКатегория iOS:
Отправьте push-уведомление с APS json:

{ "aps":{ "category":"PWNotificationCarousel" }}Пользовательские данные (Custom Data)
Вы должны перечислить URL-адреса изображений, разделяя их запятой ,

{ "images":"image1.jpg, image2.jpg, image3.jpg"}После получения push-уведомления вам нужно будет сделать долгое нажатие или смахнуть влево и нажать «Просмотреть» (View), чтобы развернуть уведомление, в зависимости от версии iOS.