Около года назад, после первого знакомства с Flurry у меня прямо вырвалось — она же рвет Google Analytics как Тузик грелку тряпку какую-то материю. И обещался написать об этом повесть. Еще до знакомства с Flurry, для своего первого приложения пришлось использовать именно гугловую аналитику, стабильную но в бета-версии. С того момента все повзрослели но я так и остался с Flurry. Пост о том, какой от нее прок и как ее готовить. А готовить ее как два пальца яйца о сковородку.
Flurry позволяет отслеживать различные аспекты работы мобильного приложения на пользовательских девайсах. Подобно взрослым Google Analytics или Яндекс.Метрика для сайтов.
Можно выбрать регион и посмотреть более детальную статистику по странам.
Все исключения, которые привели к краху приложения.
И вот все эти данные становятся доступны сразу после минимальной модификации приложения. Для анализа можно выбрать какую-то версию и, само собой, диапазон дат. Статистика используемых версий приложения также очень нагладна.
Перво-наперво нужно зарегистрироваться и создать профиль приложения. И только под это конкретное приложение будет возможность скачать jar-файл библиотеки. Видимо, библиотека генерируется с учетом выданного там же ключика приложения. Дальше, как обычно, добавляем этот jar-ник к списку используемых библиотек проекта. Осталось разобраться только с правкой манифеста и кодом.
В AndroidManifest.xml потребуется добавить строчку
В этом случае географическая статистика будет доступна только на уровне стран. Если нужна более детальная информация то придется попросить еще пару разрешений. Но это уже не очень гуманно по отношению к пользователю.
Осталось только добавить пару строчек в код. Это будут точки отсчета начала и окончания сессии. Рекомендуется их поставить в
Этой скромной подготовки будет достаточно, чтобы наблюдать данные, приведенные выше на скриншотах.
Flurry имеет еще один сладкий кусочек — отслеживание предопределенных событий на уровне приложения. Как часто происходит синхронизация? Какого типа заметки наиболее популярные? Был ли коннект к серверу во время сессии? Подобные события можно отслеживать с помощью функции
Результат может выглядеть как-то так
Здесь видно только один параметр app события Activates supported pc apps и распределение всех переданных значений. Если параметров будет передано несколько, то его можно будет выбрать в выпадающем списке слева.
Как часто это событие возникает во время сессии.
Пройдемте к коду. Он очень простой. Это хелпер прямо из приложения, который “кормит” пару графиков выше.
За бортом повести оказались возможности ручного отслеживания ошибок, использования HTTPS и
Сервис полностью бесплатный. В качестве подопытногокролика котэ выступал совсем еще маленький piCat.
Что пульсирует
Flurry позволяет отслеживать различные аспекты работы мобильного приложения на пользовательских девайсах. Подобно взрослым Google Analytics или Яндекс.Метрика для сайтов.
Можно выбрать регион и посмотреть более детальную статистику по странам.
Все исключения, которые привели к краху приложения.
И вот все эти данные становятся доступны сразу после минимальной модификации приложения. Для анализа можно выбрать какую-то версию и, само собой, диапазон дат. Статистика используемых версий приложения также очень нагладна.
Смешать но не взбалтывать
Перво-наперво нужно зарегистрироваться и создать профиль приложения. И только под это конкретное приложение будет возможность скачать jar-файл библиотеки. Видимо, библиотека генерируется с учетом выданного там же ключика приложения. Дальше, как обычно, добавляем этот jar-ник к списку используемых библиотек проекта. Осталось разобраться только с правкой манифеста и кодом.
В AndroidManifest.xml потребуется добавить строчку
<uses-permission android:name="android.permission.INTERNET"/>
В этом случае географическая статистика будет доступна только на уровне стран. Если нужна более детальная информация то придется попросить еще пару разрешений. Но это уже не очень гуманно по отношению к пользователю.
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
Осталось только добавить пару строчек в код. Это будут точки отсчета начала и окончания сессии. Рекомендуется их поставить в
onStart
и onStop
каждой активити. Переход между активити не будет засчитан как новая сессия. И вообще, если между сессиями меньше 10 секунд, то это считается как одна сессия. public void onStart()
{
super.onStart();
FlurryAgent.onStartSession(this, "Your unique application key");
// your code
}
public void onStop()
{
super.onStop();
FlurryAgent.onEndSession(this);
// your code
}
Этой скромной подготовки будет достаточно, чтобы наблюдать данные, приведенные выше на скриншотах.
Citius, Altius, Fortius!
Flurry имеет еще один сладкий кусочек — отслеживание предопределенных событий на уровне приложения. Как часто происходит синхронизация? Какого типа заметки наиболее популярные? Был ли коннект к серверу во время сессии? Подобные события можно отслеживать с помощью функции
FlurryAgent.logEvent(String eventId, Map<String, String> parameters)
Результат может выглядеть как-то так
Здесь видно только один параметр app события Activates supported pc apps и распределение всех переданных значений. Если параметров будет передано несколько, то его можно будет выбрать в выпадающем списке слева.
Как часто это событие возникает во время сессии.
Пройдемте к коду. Он очень простой. Это хелпер прямо из приложения, который “кормит” пару графиков выше.
public static void trackSupportedApp(String appName) {
if (appName == null || appName.length() == 0) return;
Map<String, String> map = new HashMap<String, String>();
map.put("app", appName);
FlurryAgent.logEvent("Activates supported pc apps", map);
}
За бортом повести оказались возможности ручного отслеживания ошибок, использования HTTPS и
onPageView()
, детализация сессии по имени пользователя, его возрасту и полу. На странице загрузки SDK о всем этом можно почитать более подробно. Я же это пока не использую. Сервис полностью бесплатный. В качестве подопытного