Firebase In-App Messaging предоставляет полезный набор предварительно настроенных вариантов поведения и типов сообщений с внешним видом по умолчанию, но в некоторых случаях вы можете захотеть расширить варианты поведения и содержание сообщений. Обмен сообщениями в приложении позволяет добавлять действия к сообщениям и настраивать внешний вид сообщений.
Добавьте действие к вашему сообщению
С помощью действий вы можете использовать свои сообщения в приложении, чтобы направлять пользователей на веб-сайт или на определенный экран в вашем приложении.
Реализовать обработчик глубоких ссылок
Firebase In-App Messaging использует обработчики ссылок для обработки действий. SDK может использовать несколько обработчиков, поэтому, если в вашем приложении уже есть один, Firebase In-App Messaging может использовать его без дополнительной настройки. Если у вас еще нет обработчика, вы можете использовать динамические ссылки Firebase. Чтобы узнать больше, прочитайте «Создание динамических ссылок на iOS ».
Добавьте действие к своему сообщению с помощью консоли Firebase.
Как только в вашем приложении появится обработчик ссылок, вы готовы создать кампанию с действием. Откройте консоль Firebase для обмена сообщениями и запустите новую кампанию или отредактируйте существующую. В этой кампании предоставьте Карту , Текст кнопки и Действие кнопки , действие Изображение или действие Баннер , где действие является релевантной ссылкой на контент.
Формат действия зависит от того, какой макет сообщения вы выберете. Модальные окна получают кнопки действий с настраиваемым текстовым содержимым кнопки, цветом текста и цветом фона. С другой стороны, изображения и верхние баннеры становятся интерактивными и вызывают указанное действие при касании.
Изменить внешний вид сообщения
Firebase In-App Messaging позволяет настраивать отображение сообщений, чтобы изменить способ отображения вашего приложения макета сообщений, стилей шрифта, форм кнопок и других деталей. Существует два способа изменить отображение сообщений: изменить отображение сообщений в приложении Firebase по умолчанию или создать собственную библиотеку отображения сообщений с нуля.
Изменить дисплеи по умолчанию
Самый простой способ настроить ваши сообщения — создать код отображения сообщений Firebase In-App Messaging по умолчанию.
Клонируйте репозиторий firebase-ios-sdk
Для начала клонируйте последний выпуск репозитория firebase-ios-sdk
и откройте каталог InAppMessaging .
Выберите типы сообщений для изменения
С клонированным репозиторием вы можете изменить любой или все типы сообщений Firebase In-App Messaging: Card
, Modal
, Banner
и ImageOnly
. Каждый тип соответствует макету сообщения в потоке создания кампании Firebase In-App Messaging.
Соответственно, каждый тип имеет доступ к разным наборам данных, определяемым параметрами настройки кампании в консоли Firebase:
Тип | заголовокТекст | основной текст | цвет текста | фоновый цвет | изображениеданные | кнопка действия | вторичная кнопка действия |
---|---|---|---|---|---|---|---|
Карта | |||||||
Модальный | |||||||
Баннер | |||||||
ImageOnly |
Изменить код рендеринга отображения сообщений
Учитывая ограничения типов сообщений, вы можете изменять их по своему усмотрению. Вы можете создать баннер, который будет отображаться в нижней части вашего приложения, перемещать кнопку действия в модальном окне, вставлять сообщение в приложении в ленту пользователя или выполнять любые другие изменения, которые сделают внешний вид сообщений соответствующим вашему приложению. .
Есть два основных момента, на которые следует обратить внимание при изменении отображения сообщений:
- Каталоги типов сообщений: у каждого типа сообщений есть отдельный каталог с файлами, определяющими логику этого типа:
- Раскадровка: в библиотеке
InAppMessaging
также есть файл.storyboard
, который помогает определить пользовательский интерфейс для всех трех типов сообщений:
Измените файлы в каталогах предпочитаемых типов сообщений и соответствующих разделах .storyboard
для создания настраиваемых дисплеев сообщений.
Обновите свой подфайл, чтобы использовать измененный код InAppMessaging
.
Чтобы заставить Firebase In-App Messaging использовать ваши измененные дисплеи сообщений вместо экранов по умолчанию, обновите свой подфайл, чтобы использовать вашу настраиваемую библиотеку 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