Класс AMPAppMetricaPush
- Методы экземпляра
- Свойства
- Описание методов
- +downloadAttachmentsForNotificationRequest:
- +handleApplicationDidFinishLaunchingWithOptions:
- +handleDidReceiveNotificationRequest:
- +handleRemoteNotification:
- +handleSceneWillConnectToSession:
- +isNotificationRelatedToSDK:
- +setDeviceTokenFromData:
- +setDeviceTokenFromData:pushEnvironment:
- +setExtensionAppGroup:
- +userDataForNotification:
- Описание свойств
Основной класс для обработки Push-уведомлений.
Методы экземпляра
Загружает прикрепленные файлы в push-уведомлениях. Метод доступен для iOS 10.0 и выше. |
|
Обрабатывает открытие push-уведомления из метода application:didFinishLaunchingWithOptions:. |
|
Обрабатывает получение push-уведомления из расширения Notification Service Extension. |
|
Обрабатывает открытие push-уведомления из метода application:didReceiveRemoteNotification:fetchCompletionHandler:. |
|
Обрабатывает открытие push-уведомления из метода scene:willConnectToSession:options:. |
|
Возвращает |
|
Регистрирует device token приложения с production-окружением. |
|
Регистрирует device token приложения с указанным окружением. |
|
Регистрирует общую группу App Groups приложения и Notification Service Extension. |
|
Возвращает произвольную строку данных, которая передается в push-уведомлении. |
Свойства
Возвращает делегат AMPUserNotificationCenterDelegate, который обрабатывает foreground push-уведомления на iOS 10 и выше. |
|
Возвращает делегат AMPUserNotificationCenterHandling, который позволяет вручную обрабатывать foreground push-уведомления на iOS 10 и выше. |
Описание методов
+downloadAttachmentsForNotificationRequest:
+ (void)downloadAttachmentsForNotificationRequest:(UNNotificationRequest *)request
callback:(AMPAttachmentsDownloadCallback)callback);
Загружает прикрепленные файлы в push-уведомлениях. Метод доступен для iOS 10.0 и выше.
Параметры:
|
Объект класса UNNotificationRequest. |
|
Callback-блок загрузки прикрепленных файлов. Формат:
Включает в себя массив вложений |
+handleApplicationDidFinishLaunchingWithOptions:
+ (void)handleApplicationDidFinishLaunchingWithOptions:(nullable NSDictionary *)launchOptions
Обрабатывает открытие push-уведомления из метода application:didFinishLaunchingWithOptions:. Метод должен быть вызван после инициализации AppMetrica SDK.
Параметры:
|
Параметры в виде пар «ключ-значение», которые содержат информацию о запуске приложения. |
+handleDidReceiveNotificationRequest:
+ (void)handleDidReceiveNotificationRequest:(UNNotificationRequest *)request
Обрабатывает получение push-уведомления из расширения Notification Service Extension.
Метод должен быть вызван в реализации метода didReceiveNotificationRequest:withContentHandler:.
Параметры:
|
Объект класса UNNotificationRequest. |
+handleRemoteNotification:
+ (void)handleRemoteNotification:(NSDictionary *)userInfo
Обрабатывает открытие push-уведомления из метода application:didReceiveRemoteNotification:fetchCompletionHandler:. Метод должен быть вызван после инициализации AppMetrica SDK.
Параметры:
|
Параметры push-уведомлений в виде пар «ключ-значение», которые передаются системой. |
+handleSceneWillConnectToSession:
+ (void)handleSceneWillConnectToSessionWithOptions:(UISceneConnectionOptions *)connectionOptions
Обрабатывает открытие push-уведомления из метода scene:willConnectToSession:options:. Метод должен быть вызван после инициализации AppMetrica SDK.
Параметры:
|
Объект класса UISceneConnectionOptions с параметрами подключения, которые передаются системой. |
+isNotificationRelatedToSDK:
+ (BOOL)isNotificationRelatedToSDK:(NSDictionary *)userInfo;
Возвращает YES
, если push-уведомление относится к AppMetrica.
Параметры:
|
Параметры push-уведомлений в виде пар «ключ-значение», которые передаются системой. |
Возвращает:
YES
— если push-уведомление относится к AppMetrica.NO
— если push-уведомление не относится к AppMetrica.
+setDeviceTokenFromData:
+ (void)setDeviceTokenFromData:(nullable NSData *)data
Регистрирует device token приложения с production-окружением. Метод должен быть вызван после инициализации AppMetrica SDK.
Параметры:
|
Device token приложения. Если передается значение |
+setDeviceTokenFromData:pushEnvironment:
+ (void)setDeviceTokenFromData:(nullable NSData *)data
pushEnvironment:(AMPAppMetricaPushEnvironment)pushEnvironment
Регистрирует device token приложения с указанным окружением. Метод должен быть вызван после инициализации AppMetrica SDK.
Внимание
AppMetrica позволяет отправлять push-уведомления в Sandbox APNs. Но обработка push-уведомлений может работать некорректно, если на устройстве запускались версии приложения с разным окружением (development и production). Чтобы избежать этого, можно использовать отдельный тестовый API key для development окружения.
Параметры:
|
Device token приложения. Если передается значение |
|
APNs окружение приложения. |
+setExtensionAppGroup:
+ (void)setExtensionAppGroup:(NSString *)appGroup
Регистрирует общую группу App Groups приложения и Notification Service Extension.
Регистрация необходима для отслеживания доставки push-уведомлений. Подробнее в разделе Настройка сбора статистики push-уведомлений.
Параметры:
|
Название общей группы App Groups. |
+userDataForNotification:
+ (nullable NSString *)userDataForNotification:(NSDictionary *)userInfo
Возвращает произвольную строку данных, которая передается в push-уведомлении:
- В поле Дополнительные данные при отправке из интерфейса AppMetrica.
- В поле
data
при отправке с помощью Push API.
Параметры:
|
Параметры push-уведомлений в виде пар «ключ-значение», которые передаются системой. |
Возвращает:
Произвольная строка данных.
Описание свойств
+userNotificationCenterDelegate
@property (readonly, class) id<AMPUserNotificationCenterDelegate> userNotificationCenterDelegate;
Возвращает делегат AMPUserNotificationCenterDelegate, который обрабатывает foreground push-уведомления на iOS 10 и выше.
Для обработки foreground push-уведомлений, добавьте этот код в методе application:didFinishLaunchingWithOptions::
[UNUserNotificationCenter currentNotificationCenter].delegate = [AMPAppMetricaPush userNotificationCenterDelegate];
Для ручной обработки push-уведомлений используйте userNotificationCenterHandler.
+userNotificationCenterHandler
@property (readonly, class) id<AMPUserNotificationCenterHandling> userNotificationCenterHandler;
Возвращает делегат AMPUserNotificationCenterHandling, который позволяет вручную обрабатывать foreground push-уведомления на iOS 10 и выше.
Используйте этот делегат, если вы реализуете протокол UNUserNotificationCenterDelegate с собственной логикой. При этом необходимо реализовать каждый метод из делегата UNUserNotificationCenterDelegate
и вызывать соответствующие методы в AMPUserNotificationCenterHandling
.
Для упрощенной обработки push-уведомлений используйте userNotificationCenterDelegate.