В Firebase In-App Messaging есть полезный набор стандартных типов сообщений и вариантов их поведения, а также внешний вид по умолчанию. Однако в некоторых случаях вам может понадобиться расширить возможности и контент сообщений. Сообщения в приложении позволяют добавлять в сообщения действия и настраивать их внешний вид.
Как добавить действие в сообщение
С помощью действий вы можете направлять пользователей из сообщений в приложении на сайт или определенный экран приложения.
Как реализовать обработчик ссылок на контент
Firebase In-App Messaging использует обработчики ссылок для выполнения действий. SDK может использовать несколько обработчиков, поэтому, если в вашем приложении уже есть один из них, Firebase In-App Messaging может использовать его без дополнительной настройки. Если у вас ещё нет обработчика, вы можете использовать Firebase Dynamic Links. Подробнее о том, как создавать динамические ссылки в iOS…
Как добавить действие в письмо с помощью консоли Firebase
После того как обработчик ссылок будет добавлен в приложение, вы сможете создать кампанию с действием.
В консоли Firebase выберите DevOps & Engagement (DevOps и взаимодействие) > Messaging (Обмен сообщениями).
Чтобы запустить рабочий процесс для настройки новой кампании, выполните следующие действия:
Если это ваша первая кампания:
- Нажмите Создайте первую кампанию.
- Выберите Сообщения в приложении Firebase и нажмите Создать.
Если вы уже создавали кампании:
- На вкладке Кампании нажмите Новая кампания.
- Выберите Сообщения в приложении.
Следуйте инструкциям на экране, чтобы настроить кампанию.
Укажите карточку, текст кнопки и действие кнопки, действие с изображением или действие с баннером, где действие – это релевантная прямая ссылка.
Формат действия зависит от выбранного макета сообщения. В модальных окнах есть кнопки действий с настраиваемым текстом, цветом текста и цветом фона. Изображения и верхние баннеры становятся интерактивными и вызывают указанное действие при нажатии.
Как изменить внешний вид сообщения
Firebase In-App Messaging позволяет настраивать отображение сообщений, изменяя макет, стили шрифтов, формы кнопок и другие детали. Изменить показ сообщений можно двумя способами: изменить настройки по умолчанию Firebase In-App Messagingили создать собственную библиотеку сообщений с нуля.
Как изменить экраны по умолчанию
Самый простой способ настроить сообщения – использовать код для показа стандартного сообщения от Firebase In-App Messaging.
Как клонировать репозиторий firebase-ios-sdk
Для начала клонируйте последнюю версию репозитория firebase-ios-sdk и откройте каталог InAppMessaging.
Как выбрать типы сообщений для изменения
После клонирования репозитория вы можете изменить любые или все типы сообщений Firebase In-App Messaging: Card, Modal, Banner и ImageOnly. Каждый тип соответствует макету сообщения в процессе создания кампании Firebase In-App Messaging.
Таким образом, каждый тип имеет доступ к разным наборам данных, определяемым параметрами кампании в консоли Firebase:
| Тип | titleText | bodyText | textColor | backgroundColor | imageData | actionButton | secondaryActionButton |
|---|---|---|---|---|---|---|---|
| Карточка | |||||||
| Модальное окно | |||||||
| Баннер | |||||||
| ImageOnly |
Как изменить код отрисовки сообщения
Учитывая ограничения по типам сообщений, вы можете изменять их по своему усмотрению. Вы можете создать баннер, который будет показываться внизу приложения, переместить кнопку действия в модальном окне, встроить сообщение в ленту пользователя или изменить его внешний вид любым другим способом, чтобы оно лучше подходило для вашего приложения.
При изменении отображения сообщений нужно учитывать два основных фактора:
- Каталоги типов сообщений. Для каждого типа сообщений есть отдельный каталог с файлами, определяющими логику этого типа:
- Раскадровка. В библиотеке
InAppMessagingтакже есть файл.storyboard, который помогает определить интерфейс для всех трех типов сообщений:
Измените файлы в каталогах нужных типов сообщений и соответствующие разделы .storyboard, чтобы создать собственные сообщения.
Как обновить файл podfile, чтобы использовать измененный код InAppMessaging
Чтобы Firebase In-App Messaging использовал измененные сообщения вместо стандартных, обновите файл Podfile, чтобы использовать вашу библиотеку InAppMessaging:
# Uncomment the next line to define a global platform for your project # platform :ios, '9.0' target 'YourProject' do # Comment the next line if you're not using Swift and don't want to use dynamic frameworks use_frameworks! # Pods for YourProject pod 'Firebase' # Remove the default InAppMessaging pod: # pod 'Firebase/InAppMessaging' # Overwrite it with a version that points to your local copy: pod `FirebaseInAppMessaging', :path => '~/Path/To/The/Cloned/Repo/' end
Как создать собственную библиотеку сообщений
Вы можете создавать интерфейс для показа сообщений не только с помощью библиотеки InAppMessaging. Вы также можете написать собственный код.
Создайте класс, реализующий протокол InAppMessagingDisplay.
Firebase In-App Messaging использует класс InAppMessaging для обмена данными между серверами Firebase и вашим приложением. Этот класс, в свою очередь, использует протокол InAppMessagingDisplay для отображения полученных сообщений.
Чтобы создать собственную библиотеку, напишите класс, реализующий протокол.
Определение протокола и документация о том, как ему соответствовать, находятся в файле FIRInAppMessagingDisplay.h библиотеки InAppMessaging.
Как настроить приложение "messageDisplayComponent" для использования библиотеки сообщений
InAppMessaging использует свойство messageDisplayComponent, чтобы определить, какой объект использовать при показе сообщений. Задайте для этого свойства объект класса показа настраиваемых сообщений, чтобы Firebase In-App Messaging знал, что для отрисовки сообщений нужно использовать вашу библиотеку:
InAppMessaging.inAppMessaging().messageDisplayComponent = yourInAppMessagingRenderingInstance