#Аналитика в мобильных приложениях для разработчика - страшный сон архитектуры вашего проекта. Всё потому, что мы, как разработчики, уважаем #SOLID, инкапсуляцию и всё такое... А потом приходит аналитик, маркетолог и просят всякую дичь. Например поведение пользователя на экране в зависимости от предыдущего экрана. И вот прощай #инкапсуляция.
Статья на тему как встраиваю аналитику обычно я - в черновиках и в работе, а тем временем ребята из La moda рассказывают как это делают они:
https://habr.com/ru/company/lamoda/blog/469761/.
Как бонус - пара слов об инструментах для аналитику мобильных приложений. Из того, с чем более-менее плотно сталкивался я, это
#Firebase #analytics (
http://bit.ly/2OQwQoe)
Бесплатно и сердито. Можно строить воронки по событиям, но нельзя использовать параметры событий в нем. Атрибуция (понять от куда пришел пользователь) есть, но в Appsflyer проще. Можно выгружать "сырые" данные в #BigQuery. Это круто, удобно и все такое, но надо повозиться. Зато можно настроить любые графики, данные и все что можно себе представить.
#Appsflyer (
https://lite.ms/mTmv5y)
Использовался в основном для атрибуций. Причем, говорят (не пробовал), есть атрибуция рекламы по ТВ. В интерфейсе воронки по событиям можно разделять на каналы. У ребят из моей команды были проблемы отправить в AppsFlyer события с сервера, чтобы следить за ЖЦ пользователя в разрезе клиент-серверного единого пространства.
#Amplitude (
http://bit.ly/2IPq7Ha)
Воронки - чума, можно строить по событиям, учитывать параметры и порядок ивентов. Посмотреть обезличенную инфу по пользователям на каждом этапе воронки и узнать кто конкретно отвалился. Например недавно прибежал аналитик и "айайай, у нас после релиза почему то >50% после первого экрана онбординга отваливаются". Зашли в amplitude, выгрузили список отвалившихся пользователей. Из условных 50 пользователей за период 30 было из США с одной и той же моделью телефона и из одной подсети. Все бы ничего, но приложение в сторе не доступно оттуда :D Выдвинули гипотезу, что это авто (или не очень) тесты после раскатки и спокойно пошли работать дальше.
Мой выбор - при старте проекта, если там и так используется Firebase - добавить аналитику от него. С ним можно уже запускаться, хоть будет понятно что происходит. Дальше Amplitude для более продвинутых воронок. Appsflyer уже если собираетесь поливать усиленно траффиком.