Как убрать аналитику из приложения
Ведущий аналитик компании Zeptolab и создатель блога GoPractice Олег Якубенков подготовил для ЦП материал об основных принципах настройки аналитики в мобильных играх, выборе необходимых событий (ивентов) и распространенных ошибках.
Фундаментом аналитики является сбор данных. Настройка аналитики мобильного приложения включает в себя интеграцию SDK системы аналитики в мобильное приложение, проектирование структуры ивентов и их расстановку внутри приложения.
Неправильно настроенный сбор данных для аналитики оставит вас без приборов в работе с продуктом, либо же обеспечит неверными данными, что, с моей точки зрения, еще хуже, чем отсутствие данных.
В этой статье я расскажу о том:
- какие ошибки часто допускают при настройке аналитики мобильных приложений;
- как я обычно подхожу к процессу встраивания аналитики в мобильное приложение;
- также я поделюсь некоторыми хаками и секретами, которые позволят вам эффективнее использовать ваши данные.
Внутренняя аналитика мобильных приложений или зачем нужны ивенты
Аналитика мобильных приложений обычно строится на ивентах. Вы шлете в систему аналитики ивенты, а система предоставляет интерфейс для работы с этими данными.
Ивент — любое действие, которое совершает пользователь (клик на кнопку, открытие определенного экрана, добавление комментария, трата или покупка внутренней валюты). Когда происходит это событие, приложение отправляет ивент на сервера системы аналитики.
Вместе с ивентами обычно передаются ряд обязательных параметров (индификатор пользователя, версия приложения, модель девайса, прочие служебные параметры), а также ряд дополнительных кастомных параметров, которые вы определяете сами — например, количество дней с момента начала использования приложения, количество запусков приложения и прочее.
По сравнению со стандартными для веба системами аналитики — «Яндекс.Метрика» или Google Analytics — описанный подход оказывается более затратным на этапе встраивания и настройки системы аналитики, но зато позволяет отвечать на существенно большее количество вопросов.
Ошибки при настройке аналитики в мобильном приложении
Обычно проектированию структуры ивентов и настройке аналитики уделяется мало времени и внимания при разработке мобильных приложений. Неправильно или некачественно настроенная аналитика сильно осложняет последующую работу с продуктом, а порой оставляет полет вашего продукта без каких-либо навигационных приборов.
Я заметил следующие распространенные ошибки при настройке аналитики:
Если более глобально, то все описанные ошибки произрастают из неправильного направления движения мысли при настройке аналитики. Аналитика призвана отвечать на вопросы, поэтому логично сначала сформулировать набор интересующих вопросов, а потом на их основе сформировать структуру ивентов, которые позволят на эти вопросы ответить, а не наоборот.
Настройка аналитики мобильного приложения. Алгоритм
Шаг 1. Что хотим знать
Сначала необходимо определиться с тем, на какие вопросы вы хотите найти ответы с помощью собираемых данных, какие гипотезы вы хотите доказать или опровергнуть. Представьте, что приложение уже запущено, и пришло время провести анализ. Что вы захотите узнать, что проверить.
Чтобы не потерять важные вопросы, я рекомендую использовать следующий подход. Выпишите основные сценарии использования вашего приложения, а затем, представляя, как пользователь проходит через них, задавайте интересующие вас вопросы.
Финальный список вопросов обычно состоит из стандартной части, которая подходит почти для любого приложения, а также из вопросов специфичных для данного конкретного приложения.
Стандартная часть обычно выглядит примерно так:
- Где люди отваливаются на туториале?
- Насколько туториал эффективен (какая часть пользователей обучилась по его итогам, а не просто прокликала его)?
- Сколько людей продолжают использовать приложение спустя один, семь, 14 дней?
- Какая доля новых пользователей заходят в магазин (или видят продающий экран)?
- Какова конверсия в покупку? В повторую покупку?
- Сколько стоит привлеченный пользователь?
- Сколько мы зарабатываем с пользователя на первый, седьмой, 14, 30 день?
- Как отличаются ответы на предыдущие вопросы в зависимости от платформы, страны, источника трафика, типа девайса?
После самостоятельного составления списка вопросов имеет смысл спросить других участников команды о том, что им интересно узнать про то, как пользователи взаимодействуют с продуктом. Если пропустить эту часть, то может получиться, например, что вы включили в список ключевые вопросы по геймдизайну, но вопросы про интерфейсные решения остались вне вашего внимания.
Итогом этого шага является список вопросов, который представляет собой структуру исследования приложения.
Шаг 2. Какие ивенты и с какими параметрами нужны, чтобы ответить на вопросы из первого шага
Теперь у вас есть понимание того, что конкретно вы хотите знать, поэтому можно переходить к проектированию структуры ивентов и их параметров. Подойдите к этому процессу итеративно. Быстро составьте первую версию списка ивентов и переходите к следующему пункту. К этому пункту вы еще вернетесь.
Шаг 3. Позволит ли используемая система аналитики ответить на вопросы из первого шага со структурой ивентов из второго шага
Дело в том, что разные системы аналитики обладают разной функциональностью, разными возможностями и разными ограничениями, и все эти особенности надо учитывать еще на этапе встраивания аналитики в приложение. Особенности вашей системы аналитики вам, скорее всего, хорошо знакомы, но я все-таки приведу несколько примеров, чтобы было понятнее, о чем идет речь.
Пример 1. Во Flurry есть ограничение на количество параметров, которые можно передавать с ивентом (не более десяти параметров у конкретного ивента). Поэтому при создании структуры ивентов и параметров вам надо держать эту особенность в голове. В Kontagent параметров ивентов по сути нет , поэтому всю содержательную информацию придется поместить в название ивента.
Пример 2. Во Flurry при составлении воронок нельзя указывать параметры ивентов. Поэтому если вы захотите построить воронку движения пользователя по уровням в вашей игре, то придется для каждого уровня заводить отдельный ивент. Несмотря на то, что удобным и логичными кажется заведение специального ивента, отправляемого при прохождении уровня с параметром level_number, в случае если вы хотите иметь воронку прохождения игры по уровням и при этом используете Flurry, это решение вам не подойдет.
Пример 3. Если вы используете Mixpanel и хотите интегрировать его с AppsFlyer (система для определения источников трафика), чтобы в Mixpanel знать, откуда пришел пользователь, то вам надо будет делать параметр источника трафика глобальным (то есть передавать его со всеми ивентами). В противном случае вы, например, не будете знать о том, пользователю из какого источника трафика принадлежит покупка, а значит не сможете посчитать LTV для разных каналов трафика.
Таких особенностей систем аналитики много, и думать о них следует на этапе настройки аналитики приложения. Если оказалось, что текущая структура ивентов и параметров не закрывает ваши вопросы с помощью используемой у вас системы аналитики, то вернитесь ко второму шагу и переделайте структуру ивентов.
Шаг 4. Еще раз пройдитесь по предыдущим пунктам
Спустя некоторое время имеет смысл еще раз пройтись по получившемуся списку вопросов и структуре ивентов, чтобы добавить туда то, что было упущено (а такое есть почти всегда), а также, чтобы оптимизировать структуру ивентов для упрощения последующей работы с данными.
Шаг 5. Встройте аналитику в приложение
На этом этапе максимально детально объясните разработчикам суть каждого ивента и параметра. Расскажите, когда и при каких условиях каждый конкретный ивент должен отправляться, для чего он нужен, и что с его помощью вы хотите понять, узнать, проверить.
Осмысленное встраивание аналитики окупается экономией времени на следующем шаге.
Шаг 6. Протестируйте статистику перед релизом
Тестировать можно поверхностно – просто проверить факт того, что ивенты и их параметры приходят в систему аналитики.
Но чтобы быть до конца уверенным в том, что все работает правильно, я рекомендую использовать следующий подход. Выгрузите собственную сессию использования приложения в виде последовательности ивентов во времени. Затем проверьте, что все ивенты приходят в нужный момент, и что все параметры изменяются в соответствии с заложенной вами логикой.
В системе аналитики Mixpanel это делать очень удобно благодаря инструменту Live view (инструмент позволяет видеть и фильтровать приходящие ивенты в режиме реального времени). Вы что-то делаете в тестовой версии приложения и сразу же видите ивенты, которые приходят в систему аналитики.
Я рекомендую очень внимательно проверять мобильную аналитику, как минимум по двум причинам:
- Обновить аналитику в мобильном приложении — это накладно (временные затраты на проверку приложения в сторе, а также временные затраты на обновление пользователей на новую версию).
- Неправильные данные – это еще хуже, с моей точки зрения, чем их отсутствие.
Описанный выше алгоритм настройки аналитики мобильного приложения из шести шагов может показаться достаточно сложным, но в реальности все просто и понятно. Если все описанное выше поместить в одно предложение, то получится следующее: заранее подумайте о том, что вы хотите узнать из собираемых данных, и заранее убедитесь, что ваша система аналитики способна дать вам это знание при имеющейся структуре ивентов.
Полезные хаки при настройке аналитики в мобильном приложении
Глобальные параметры
Есть такой полезный хак — отправлять определенные параметры со всеми ивентами. Я называю такие параметры глобальными.
Глобальные параметры обычно характеризуют пользователя, а не само действие, к которому прикреплен ивент. В список глобальных параметров я почти всегда вношу следующие параметры:
- номер недели или дня, когда пользователь пришел в игру (для последующего выделения когорт);
- источник трафика;
- уровень игрока;
- количество покупок;
- количество пройденных уровней в игре.
Пишите статистику как минимум в две системы аналитики
Даже при внимательной проверке статистики на этапе тестирования, все равно случаются ошибки, поэтому лучше писать данные как минимум в две системы, чтобы иметь возможность проверять их достоверность. В качестве запасной системы аналитики удобно использовать Flurry.
Проверяйте покупки на сервере перед тем, как писать их в статистику
Если вы хотите использовать вашу систему аналитики для работы с финансовыми данными, то обязательно делайте серверную валидацию платежей перед тем, как писать ивенты покупки в статистику. В противном случае читеры испортят все ваши данные.
Как хранить структуру ивентов
Для хранения и ведения структуры ивентов хорошо подходит файл Excel. Заводите новую вкладку на каждую версию приложения и отмечайте цветом ивенты, которые добавились в соответствующей версии приложения. Так вы всегда будете знать, когда и какие изменения вносились в структуру ивентов.
Как называть ивенты
Чтобы не путаться в названиях ивентов, их удобно называть по принципу ЭКРАН_ЭЛЕМЕНТ_ДЕЙСТВИЕ. Например, старт уровня будет называться LEVSCR_LEVEL_STARTED, а покупка в магазине SHOP_ITEM_PURCHASED.
Для некоторых сущностей такая структура не подходит, тогда можно вводить сквозные ивенты, которые не привязаны ни к какому экрану, а отвечают, например, за трекинг внутренней экономики. Такие ивенты можно назвать ECONOMICS_CURRENCY_SPENT и ECONOMICS_CURRENCY_GAINED, а в качестве параметров передавать method (на что потратил) и value (сколько потратил).
Заключение
И еще раз суть статьи в одном предложении. Заранее подумайте о том, что вы хотите узнать из собираемых данных, и заранее убедитесь, что ваша система аналитики способна дать вам это знание при имеющейся структуре ивентов.
Если у вас есть свои хаки встраивания аналитики в приложения, то поделитесь ими в комментариях. Спасибо.
Личные данные — это новая нефть нашего века. Их главные поставщики — сайты и приложения. И они делают всё, чтобы получить как можно больше информации о пользователях. Ряд из них даже обходят правила магазинов приложений. Как остановить работу подобных программ и ограничить утечку собственных данных в Интернет — в материале Лайфа.
Прежде всего личные данные пользователя нужны рекламодателям. История браузера, покупок в Интернете, геолокация — всё это используется для показа таргетированной рекламы.
Лучшее решение проблемы — отключить её. Сделать это помогут специальные приложения, блокирующие рекламу. Полностью избавиться от баннеров и прекратить слежку можно с помощью фильтров на уровне DNS.
Три лучших сервиса для этого:
- Blokada — бесплатный, ведётся небольшой шведской командой, монетизируется пожертвованиями и платной подпиской. Добавлен VPN, доступ предоставляется по подписке.
- NextDNS — предоставляет бесплатные услуги по блокировке рекламы и других вредоносных IP-адресов. Автоматически фильтрует трафик, не ведёт логов, шифрует DNS-запросы, поддерживает DNS over HTTPS (DoH).
- AdGuard — блокирует рекламу в мобильном Samsung Internet и "Яндекс.Браузере". Для работы приложению не нужны root-права.
Смотреть, к чему приложение запрашивает доступ
Гаджеты. Главное по теме
Осенью 2019 года создатель софта для цифровой безопасности Avast заметил, что приложения для Android злоупотребляют разрешениями на использование данных и функций смартфонов. В частности, запрашивают доступ к файлам и возможностям, которые им для работы не нужны.
В качестве примера компания привела приложение "Фонарик". Для его работы нужен доступ только к фотовспышке, при этом оно запрашивает у пользователей контакты, микрофон и хранилище. Если приложение просит доступ к ненужным ему данным, это делается для заработка на них, а именно сбора и передачи информации третьим лицам.
Решение проблемы — перед запуском обратить внимание, к чему приложение запрашивает доступ. Если условный "Фонарик" просит доступ к файлам на устройстве, не разрешайте.
Желательно проверить все приложения и задуматься, как используются запрашиваемые ими данные. Например, агрегатору такси нужна геолокация, чтобы автоматически определить местоположение пользователя. Браузеру же она не нужна, смело отключайте.
- Как это сделать на Android: "Настройки" —> "Приложения" —> выберите приложение —> "Разрешения".
- Как это сделать на iOS: "Настройки" —> "Конфиденциальность" —> выберите одну из категорий информации (например, "Календари", "Напоминания" или "Движение и фитнес") —> в списке показаны приложения, запросившие доступ.
Следить за активностью приложений
Каждому сайту доступны cookie-файлы, и хакеры ими пользуются. Новый способ взлома аккаунтов
Журналисты издания TheNextWeb заметили странную активность приложения Facebook на iPhone: при открытии соцсети вместе с ней запускается приложение камеры.
Эта же активность была обнаружена на пяти разных iPhone на iOS версии 13.2.2. Причём журналисты нашли закономерность: проблема возникает, если вы предоставили Facebook доступ к своей камере.
Ошибка ли это в программном обеспечении или целенаправленная слежка за пользователями, неясно. Но очевидно следующее: если у приложения есть права для взаимодействия с другим софтом, оно вполне может устроить слежку.
Впрочем, Apple частично решила проблему. С iOS 14 смартфоны сообщают, когда активируются камера или микрофон. Тем не менее это не помешает приложению-шпиону скопировать данные из хранилища и передавать их на сервер. Решение — проверить, к каким возможностям у каждого софта есть доступ. И максимально его ограничить.
Скачивать приложения только из официальных магазинов
Зарядка для смартфона теперь покупается отдельно. Как правильно выбрать
App Store, Google Play и Huawei AppGallery устанавливают требования разработчикам. За активностью приложений следят, даже когда они установлены на устройствах. Как только они перестают соответствовать требованиям площадки, их удаляют.
В случае с софтом, скачанным через APK-файл, контроль за ним не ведётся. Соответственно, оно может злоупотреблять возможностями — собирать все данные, активировать камеру и микрофон. Это касается и взломанных версий приложений, и тех, что нет в магазинах.
Летом этого года разразился конфликт между Apple и Epic Games. Разработчик мобильной игры внедрил свою платёжную систему в Fortnite, чтобы не платить комиссию Apple за встроенные покупки. В итоге приложение было удалено за несоблюдение правил. Потому что платёжная система разработчика непроверенная и может использоваться в мошеннических целях. Epic Games — проверенная студия, сотни тысяч других разработчиков — нет. Политика Apple может показаться жёсткой, но лучше способа ещё не придумали. Поэтому пользоваться стоит исключительно приложениями из официальных магазинов.
Владелец любого Android смартфона вряд ли откажется от предложения ускорить его работу, тем более когда для этого нужно сделать лишь пару нажатий на экран.
В этой статье я покажу наверное самый простой способ, который будет особенно актуален для моделей с не самыми мощными процессорами. Но начать мне бы хотелось с дополнения вчерашней статьи, в которой я рассказывал о том, как отказаться от сбора данных (если не читали, ссылка будет ждать вас ниже).
Итак, уже после публикации, я продолжил своё блуждание по меню настройки Google аккаунта и обнаружил ещё один подозрительный пункт.
Если вы зайдёте в «Настройки» —> Google —> Устройства и обмен данными —> Устройства, вы обнаружите пункт «Показывать уведомления», который судя по всему дублирует выключенное ранее сканирование устройств поблизости. Он так же задействует беспроводные сети, а значит расходует заряд аккумулятора, поэтому я советую так же сделать его неактивным.
Чтобы отказаться от сбора аналитики, зайдите всё в тоже меню («Настройки» —> Google), затем нажмите на три точки в правом верхнем углу и выберите «Использование и диагностика».
Ускорение смартфона
С вашего позволения, я не стану рассказывать какое огромное значение (для быстрой работы смартфона) имеет графический ускоритель. Качество отрисовки интерфейса создаёт то самое ощущение скорости, но далеко не все смартфоны с последними версиями MIUI, могут похвастаться отсутствием микролагов и подтормаживаний.
Безусловно, можно по совету моих коллег зайти в меню «Для разработчиков» и отключить всю анимацию полностью, но лично мне кажется, что это слишком радикальные меры, которые лишают удовольствия от использования гаджета.
Моя находка, убирает лишь самые «тяжелые» анимации, тем самым снижая нагрузку на центральный процессор и графический ускоритель, при этом работа системы не станет напоминать интерфейс банкоматов.
Как я и говорил, для активации этой функции нужно сделать всего несколько нажатий. Зайдите в «Настройки» —> Расширенные настройки —> Спец. возможности —> Зрение и активируйте пункт «Удалить анимации».
Уверяю вас, после этого вы сразу заметите, что ваш смартфон стал работать быстрее, а «задумчивость» системы ушла не оставив следов.
Программа Analytics – это встроенное приложения оболочки MIUI, которое собирает информацию о взаимодействии смартфона с пользователем. Так же программа собирает статистическую информацию о процессах, запущенных на смартфонах Xiaomi. Сама по себе программа работает для обратной связи с разработчиками и передает аналитическую информацию. Угрозы пользователю не несёт.
Ошибки при обновлениях компонентов
Сама по себе ошибка носит случайный характер и не все телефоны Сяоми попали «под раздачу». Такое бывает при выходе обновлений для оболочки MIUI или отдельных компонентов системы. Приложение не всегда успевают протестировать на совместимость с другими программами и корректную работу со всеми моделями телефонов. Разработчики в таких случаях в течении нескольких дней выпускают новое обновление, где баг исправили. По этому для решения ошибки есть два пути: удалить текущее обновление программы Analytics или ждать когда выйдет версия без ошибки.
Способ 1. Удаляем текущее обновление
Для удаления текущего обновления Аналитики воспользуемся стандартным функционалом смартфона.
- Тянем шторку вниз и открываем «Настройки» телефона.
- Далее заходим в пункт «Приложения», «Все приложения».
- В поиске вбиваем Analytics.
- Если ничего не нашло нажимаем снизу надпись «Показать результаты для всех приложений».
- Проваливаемся в настройки программы, кликаем на неё.
Находим приложение Analytics в списке
Нажимаем Удалить обновления
Способ 2. Ждём выхода новой версии
Если предупреждение появляется уже не первый день – возможно для него уже вышло обновление. В списке «Обновление компонентов» оно может быть подписано как «Analytics» или «Обновление компонентов MIUI». Что бы увидеть список новых обновленных компонентов:
- Откройте «Настройки» устройства.
- Обычно в самом верху есть пункт «Обновление компонентов». Перейдите туда.
Открываем Обновление компонентов
Нажимаем Обновить Все
Мы рекомендуем регулярно просматривать этот раздел. Разработчики постоянно ведут работу над прошивкой смартфона и программным обеспечением. Плюс постоянно обновляется визуальное оформление, добавляются новые функции в приложение. Обновляйте все компоненты по пере их появления в списке.
Данный способ подойдет для аналогичных проблем. Если при работе со смартфоном появляется окошко «В приложении произошла ошибка» вы можете воспользоваться инструкцией выше.
Заключение
Вот такие простые действия помогут избавиться от ошибок в различных приложениях при работе с телефоном. Напишите в комментариях помогло ли вам удаление обновлений или вы ждёте выхода новой версии Аналитики. Так же задавайте другие вопросы по работе системы Андроид, софта и программ, наша команда старается освящать наиболее актуальные темы.
Евгений Загорский
IT специалист. Автор информационных статей на тему Андроид смартфонов и IOS смартфонов. Эксперт в области решения проблем с компьютерами и программами: установка, настройка, обзоры, советы по безопасности ваших устройств. В свободное время занимается дизайном и разработкой сайтов.
Читайте также: