Упрощенная интеграция iOS
Если у вас уже подключена стандартная интеграция Mindbox SDK, переподключение через упрощенный способ не требуется.
Эта инструкция описывает упрощенную интеграцию Mindbox SDK в нативное iOS-приложение. Она подходит для быстрой настройки push-уведомлений без ручной реализации логики их получения и обработки.
Когда подходит упрощенная интеграция
Используйте упрощенную схему, если:
- приложение подключает Mindbox SDK впервые и существующей интеграции нет;
- нужно быстро запустить push для MVP или тестового сценария;
- не планируется совместное использование сторонних push-провайдеров (например, Firebase);
- важно минимизировать работу с нативным кодом.
Что поддерживается
- Получение push-уведомлений через APNs;
- Автоматическая регистрация токена устройства после инициализации;
- Показ уведомлений с иконкой приложения;
- Открытие приложения по клику на push — переход на главный экран (поведение по умолчанию);
- Доступ к payload и URL из push при клике в него — можно реализовать кастомный переход;
- Отправка операций из приложения:
Mindbox.shared.executeAsyncOperation; - Rich push (при включении соответствующей настройки);
- Показ in-app уведомлений, настроенных в Mindbox.
Что не поддерживается
- Центр уведомлений (ЦУ) и сложные сценарии коммуникации;
- Совместное использование со сторонними push-SDK без доработок;
- Встроенная собственная навигация по клику — для нее потребуется переход на стандартную интеграцию.
Шаг 1. Получите ключ APNs
- Перейдите в Apple Developer → Keys → + → включите Apple Push Notifications service (APNs);
- Создайте ключ и скачайте файл
.p8. - Сохраните значения:
- Key ID (например,
AB12C3D4E5), - Team ID,
- Bundle ID приложения
- Key ID (например,
Эти значения понадобятся при настройке проекта на стороне Mindbox. Подробнее - Получение ключей APNs.
Шаг 2. Добавьте SDK
-
В
ios/Podfileдобавьте зависимость:Code -
Установите зависимости:
Code
Подробнее - Добавление SDK.
Шаг 3. Инициализация и базовая настройка в AppDelegate
Инструкция для инициализации.
В AppDelegate добавьте следующий код:
Добавляйте MindboxApp.configure() до использования других библиотек, которые используют Swizzling, так как не все библиотеки поддерживают сквозную передачу методов.
Code
Если в коде есть вызов MindboxJSDelivery, то его нужно удалить. Вручную вызывать этот метод больше не нужно, вся обработка происходит со стороны Mindbox SDK.
Шаг 4. Настройте обработку событий
- Клики по push - см. инструкцию по обработке кликов.
- Rich-push (по необходимости) - см. настройку rich-push.
- Фоновые задачи - см. руководство по фоновым задачам.
Пример асинхронной операции:
Code