Возможности Altcraft mSDK
Мобильный SDK v.1 реализован на Firebase для платформы Android и на Firebase и APNs для платформы iOS. Ниже вы можете ознакомиться с возможностями, которыми обладает SDK на сегодняшний день.
Android SDK (Firebase)
-
Подписка пользователя на push-уведомления Altcraft. После интеграции и инициализации SDK токен устройства Firebase Cloud Messaging будет передан на сервер платформы, а также будет создан профиль подписчика для дальнейшей отправки push-уведомлений.
-
Поддержка текста, изображений и кнопок в уведомлениях. Push-уведомления поддерживают текст, изображения и кнопки, для которых можно установить действие при нажатии (переход по URL-ссылке, deepLink или открытие приложения).
-
Актуализация токенов на устройстве. SDK выполняет запрос текущего токена у Firebase Cloud Messaging во время запуска приложения, поступления push-уведомления, а также проверяет его каждые 2 недели с помощью периодической фоновой задачи. Это позволяет избежать устаревания токена Firebase (в соответствии с рекомендациями Google).
-
Обновление токенов на сервере Altcraft. В случае изменения FCM-токена SDK выполняет обновление токена на сервере платформы. Это гарантирует акту альность токена.
-
Регистрация событий. События поступления уведомления на устройство, а также клика по нему (события hubLink) регистрируются SDK, а их данные передаются на сервер и формируют статистику доставки и открытия push-уведомлений.
-
Повтор запросов. SDK автоматически повторяет неудачные запросы на подписку, обновление токена, а также события hubLink. В случае запроса, выполненного с ошибкой, данные для выполнения запроса сохраняются в базу данных, а запрос повторяется. Повтор выполнения осуществляется следующим образом:
- Сразу после неудачи выполняется несколько повторных запросов через увеличивающиеся временные интервалы с помощью системной функции класса ListenableWorker (данный класс используется для выполнения запросов подписки, обновления и hubLink). Если система отзывает интернет-соединение у приложения, например, после закрытия, запрос выполнится повторно сразу после предоставления соединения.
- Повтор с помощью периодических задач класса WorkManager с минимальным интервалом 3 часа между проверками наличия неудачных запросов (при условии доступа к интернет-соединению).
- Повтор во время получения push-уведомления с высоким приоритетом. Даже если приложение выгружено из памяти, получение push-уведомления "разбудит" приложение и предоставит доступ к интернету для выполнения повтора неудачных запросов.
- Повтор во время запуска приложения. Каждый раз при запуске приложения выполняется проверка наличия неудачных запросов в базе данных.
-
Работа в фоне. При условии предоставления разрешения на использование сервисов переднего плана, выполнение запроса на подписку или обновление токена будет продолжено даже после выхода из приложения или перехода в background (свернутое состояние). На выполнение данных запросов будет выделена 1 минута. Это значительно увеличивает вероятность успешного выполнения запроса в случае, если пользователь вышел из приложения до его завершения. Однако стоит учитывать, что, согласно требованиям системы Android, во время работы сервисов переднего плана в панели уведомлений будет отображаться сообщение о том, что приложение продолжает работу.
-
Обработка уведомлений. SDK предоставляет возможность обработки сообщения и чтения данных push-уведомлений в приложении.
-
API событий. Платформа предоставляет API для получения событий SDK в приложении.
IOS SDK (APNs)
-
Подписка пользователя на push-уведомления Altcraft. После интеграции и инициализации SDK токен устройства APNs будет передан на сервер платформы, а также будет создан профиль подписчика для дальнейшей отправки push-уведомлений.
-
Поддержка текста, изображений и кнопок в уведомлениях. Push-уведомления поддерживают текст, изображения и кнопки, для которых можно установить действие при нажатии (переход по URL-ссылке, deepLink или открытие приложения).
-
Обновление токенов на сервере Altcraft. SDK выполняет автоматический контроль изменения APNs-токена устройства. В случае его изменения SDK выполнит обновление токена на сервере платформы. Это гарантирует актуальность токена.
-
Регистрация событий. События посту пления уведомления на устройство, а также клика по нему (события hubLink) регистрируются SDK, а их данные передаются на сервер и формируют статистику доставки и открытия push-уведомлений.
-
Повтор запросов. SDK автоматически повторяет неудачные запросы на подписку, обновление токена, а также события hubLink. В случае запроса, выполненного с ошибкой, данные для выполнения запроса сохраняются в базу данных, а запрос повторяется. Повтор выполнения осуществляется следующим образом:
- Сразу после неудачи выполняется несколько повторных запросов через увеличивающиеся временные интервалы с помощью функций SDK.
- Повтор с помощью задач, регистрируемых с использованием системного фреймворка BGTask, с минимальным интервалом 3 часа между проверками наличия неудачных запросов (если приложение свернуто).
- Повтор во время получения push-уведомления. Даже если приложение выгружено из памяти, получение push-уведомления "разбудит" приложение и предоставит доступ к интернету для выполнения повтора неудачных запросов.
- Повтор во время запуска приложения. Кажд ый раз при запуске приложения выполняется проверка наличия неудачных запросов в базе данных.
-
Работа в фоне. SDK поддерживает возможность завершения выполнения запросов на подписку и обновление токена после перехода в background (свернутое состояние) на 29 секунд. Это значительно увеличивает вероятность успешного выполнения запросов при условии выхода пользователя из приложения до его завершения.
-
Обработка уведомлений. SDK предоставляет возможность обработки сообщения и чтения данных push-уведомлений в приложении.
-
API событий. Платформа предоставляет API для получения событий SDK в приложении.
IOS SDK (Firebase)
-
Подписка пользователя на push-уведомления Altcraft. После интеграции и инициализации SDK токен устройства Firebase Cloud Messaging будет передан на сервер платформы, а также будет создан профиль подписчика для дальнейшей отправки push-уведомлений.
-
Поддержка текста, изображений и кнопок в уведомлениях. Push-уведомления поддерживают текст, изображения и кнопки, для которых можно установить действие при нажатии (переход по URL-ссылке, deepLink или открытие приложения).
-
Актуализация токенов на устройстве. SDK выполняет запрос текущего токена у Firebase Cloud Messaging во время запуска приложения и поступления push-уведомления. Это позволяет избежать устаревания токена Firebase (в соответствии с рекомендациями Google).
-
Обновление токенов на сервере Altcraft. В случае изменения FCM-токена SDK выполняет обновление токена на сервере платформы. Это гарантирует актуальность токена.
-
Регистрация событий. События поступления уведомления на устройство, а также клика по нему (события hubLink) регистрируются SDK, а их данные передаются на сервер и формируют статистику доставки и открытия push-уведомлений.
-
Повтор запросов. SDK автоматически повторяет неудачные запросы на подписку, обновление токена, а также события hubLink. В случае запроса, выполненного с ошибкой, данные для выполнения запроса сохраняются в базу данных, а запрос повторяется. Повтор выполне ния осуществляется следующим образом:
- Сразу после неудачи выполняется несколько повторных запросов через увеличивающиеся временные интервалы с помощью функций SDK.
- Повтор с помощью задач, регистрируемых с использованием системного фреймворка BGTask, с минимальным интервалом 3 часа между проверками наличия неудачных запросов (если приложение свернуто).
- Повтор во время получения push-уведомления. Даже если приложение выгружено из памяти, получение push-уведомления "разбудит" приложение и предоставит доступ к интернету для выполнения повтора неудачных запросов.
- Повтор во время запуска приложения. Каждый раз при запуске приложения выполняется проверка наличия неудачных запросов в базе данных.
-
Работа в фоне. SDK поддерживает возможность завершения выполнения запросов на подписку и обновление токена после перехода в background (свернутое состояние) на 29 секунд. Это значительно увеличивает вероятность успешного выполнения запросов при условии выхода пользователя из приложения до его завершения.
-
Обработка уведомлений. SDK предоставляет возможность обработки сообщения и чтения данных push-уведомлений в приложении.
-
API событий. Платформа предоставляет API для получения событий SDK в приложении.