Firebase In-App Messaging предоставляет набор предварительно настроенных типов поведения и сообщений со стандартным внешним видом, но в некоторых случаях может потребоваться расширить поведение и содержимое сообщений. Сообщения в приложении позволяют добавлять действия к сообщениям и настраивать их внешний вид.
Как добавить действие в сообщение
С помощью действий вы можете направлять пользователей на сайт или определенный экран в приложении.
Как реализовать обработчик ссылок на контент
Firebase In-App Messaging использует обработчики ссылок для выполнения действий. SDK может использовать несколько обработчиков, поэтому если в вашем приложении уже есть один, Firebase In-App Messaging может использовать его без дополнительной настройки. Если у вас нет обработчика, используйте Firebase Dynamic Links. Подробнее о том, как создавать динамические ссылки в iOS…
Добавьте действие в сообщение с помощью консоли Firebase.
После того как вы добавите в приложение обработчик ссылок, вы сможете создать кампанию с действием.
В консоли Firebase выберите DevOps & Engagement (DevOps и взаимодействие) > Messaging (Обмен сообщениями).
Запустите рабочий процесс, чтобы настроить новую кампанию:
Если это ваша первая кампания:
- Нажмите Создать первую кампанию.
- Выберите Firebase In-App Messaging и нажмите Создать.
Если у вас уже есть кампании:
- На вкладке Кампании нажмите Новая кампания.
- Выберите In-App Messaging.
Следуйте инструкциям на экране, чтобы настроить кампанию.
Добавьте карточку, текст кнопки и действие кнопки, действие изображения или действие баннера, где действие – это ссылка на контент.
Формат действия зависит от выбранного макета сообщения. В модальных окнах есть командные кнопки с настраиваемым текстом, цветом текста и цветом фона. Изображения и верхние баннеры становятся интерактивными и при нажатии на них выполняется указанное действие.
Как изменить внешний вид сообщения
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