С чего начать аналитику?
Статьи по GA(Google Analytics) можно разделить на два типа. Первый - это tutorial для разработчиков, смысл которых: "Как установить GA в Android?". Второй - для маркетологов, где приведены дофига графиков, которые никакого смысла кроме "маркетологов" не несут.
Итак, я оказался в ситуации, когда "крепость" взяли, но что с ним делать дальше непонятно. Если я его сейчас оставлю, то через какое-то время все забудется и опять приносить дискомфорт. Прямо сейчас нужно привязаться к чему либо.
В общем, смысл в том чтобы оно мне как-то облегчало жизнь, так сказать улучшало мое положение сейчас. Как мне улучшить свое положение с помощью Google Analytics?
Количество установок?
Измерить количество установок - никакого смысла не несет. Во-первых, приложение еще не вышло, нет никого кроме меня. Во-вторых, этот показатель мне не интересен. Установка GA ради этого не стоит "выеденной каши" (или выпитого кофе и пива, в моем случае)
Как писать тесты?
Как оно должно зайти в приложение, интересно. Сразу навевает на мысли по разделения на интерфейсы и реализацию по Clean Code. И что тестировать? Тестировать следует отправляются ли параметры(события), и правильные ли параметры отправляются.
По хорошему, нужно придумать механику "принуждения к тестировованию", либо методику тестирования, чтобы оно шло без сложностей, как бы бесплатно, в качестве приложения.
Аналитика, по своей сути - это аспект жизни приложения. Это одна из проекций, которая должна проходить через каждый "орган жизнеобеспечения" приложения. Она такая-же пронизывающая реальность материя, как например авторизация, либо "светлая/темная тема", локализация. Это аспект, который непременно должен сопровождать всё.
Однако, архитектура должна теоритически не исключать возможность замены Google Analytics на другое решение. Должна быть абстракция.
А что такое абстракция? Для этого случая - аналитики, абстракция - это некое умозрительное представление, о том каким должна быть аналитика. И учитывая что реализация библиотек разная в каждой аналитической системе, то самое правильное - это написать свой слой аналитики, так как я это вижу сам. Фактически, это означает - написать клиентскую часть "велосипеда".
Велосипед решает проблему. Т.к. теперь нужно пытаться понять "замысел" Google Analytics. Мы разделяем груз на части :"гугловскую" и аналитику(как таковую). Теперь аналитика существует как самостоятельный аспект, полностью принадлежащий мне, т.е. моему коду. Таким образом, мы освободились от зависимости от Google. Принцип Dependency Inversion в действии. Оно прочищает мозги.
Теперь, когда все в моих руках, можно задуматься с "чистого листа": Каким я вижу аналитику?