Запись событий
Убедитесь, что предыдущие шаги выполнены успешно
- SDK добавлено в ваше мобильное приложение
- Инициализация выполнена успешно
Результат шага
- События и экраны передаются в Carrot quest
Запись событий
Для отправки события используйте trackEvent(). При необходимости можно передать дополнительные параметры:
dart
await Carrot.trackEvent(
'Оформил заказ',
params: {
'sum': '1500',
'currency': 'RUB',
},
);Трекинг экранов
Для запуска триггерных сообщений на определенных экранах можно передавать названия экранов через trackScreen():
dart
await Carrot.trackScreen('CatalogScreen');Трекинг UTM-меток
Метод trackUtm() извлекает UTM-параметры (utm_source, utm_medium, utm_campaign, utm_term, utm_content) из строки запроса переданного URL и фиксирует их как события и свойства пользователя. Типичный сценарий — вызов при открытии приложения по диплинку:
dart
await Carrot.trackUtm('https://example.com/promo?utm_source=test&utm_medium=app&utm_campaign=demo');Метод можно вызывать до завершения инициализации SDK. В этом случае SDK дождется инициализации и затем обработает ссылку.
Для получения диплинков в Flutter-приложении можно использовать, например, пакет app_links:
dart
import 'package:app_links/app_links.dart';
final appLinks = AppLinks();
// Стрим доставляет в том числе ссылку, по которой было открыто приложение
appLinks.uriLinkStream.listen((uri) {
Carrot.trackUtm(uri.toString());
});