Интеграция Google Analytics в iOS-приложение
Зачастую бизнесу интересно не только разработать приложение для мобильных устройств, но и отслеживать статистику его использования. Одним из решений по отслеживанию статистики использования приложений для iOS является Google Analytics. О том, как встроить его поддержку в iOS-приложение мы сегодня и поговорим.
А это не для сайтов?
Мой разносторонний читатель, возможно, спросит, какое именно отношение система статистики посещаемости сайтов Google Analytics имеет к мобильным приложениям? Что вообще позволяет сделать Google Analytics для сбора статистики по использованию мобильного приложения?
Прежде всего, с помощью этой системы можно отслеживать переходы пользователя к тому или иному view controller’у. Это сделано полностью по аналогии с просмотром веб-страниц сайта, на котором установлен код Google Analytics. Кроме того, SDK системы позволяет отслеживать произвольные события, информация о которых может передаваться в админку сервиса в определенном формате, а также, отслеживать совершение встроенных покупок (in-app purchase).
Подготовка аккаунта Google Analytics
Для начала нам понадобится аккаунт в Google Analytics. Если вы еще не зарегистрированы в этом сервисе Google, переходим по этой ссылке и нажимаем оранжевую кнопку в правом верхнем углу - Зарегистрироваться.
Войдя в свой аккаунт переходим на вкладку Администратор и в левой части окна в выпадающем списке Аккаунт выбираем Создать аккаунт. Далее следуем инструкциям из достаточно подробной документации. В моем примере я использовал в качестве названия аккаунта Google Analytics Test App (в выпадающем списке мое приложения обозначено единичкой), а в качестве названия ресурса (приложения) - GATestApp.
Обратите внимание на выделенный на рисунке пункт 2 - именно там находится уникальный идентификатор приложения, который мы будем использовать для нашего приложения чуть дальше.
Далее необходимо загрузить iOS SDK. В моем случае это был SDK версии 3.03c.
Вот мы и добрались до iOS
После этого создаем простое тестовое приложение с одним view controller’ом (я назвал свое приложение GATestApp). В него необходимо добавить из загруженного архива файлы, перечисленные на рис. 3 в рамке с цифрой 1. После добавления указанных файлов, необходимо добавить ссылки на фреймворки, указанные на рис. 3 в рамке с цифрой 2.
Далее приводим AppDelegate.h
к виду:
Файл реализации AppDelegate.m
приводим к следующему виду:
Данный код создает на уровне делегата приложения объект трекера типа id<GAITracker>
. Далее при старте приложения мы призводим настройку синглтона трекера Google Analytics в методе - initializeGoogleAnalytics
.
Параметр kGaPropertyId
отвечает за уникальный идентификатор приложения, который мы получили ранее. Параметр kGaDryRun
нужен для того, чтобы во время разработки приложения данные не отсылались в Google Analytics и не портили реальную статистику (значение YES
, значение NO
используется в продакшене). Параметр kGaDispatchPeriod
отвечает за интервал отправки данных. По умолчанию данные отправляются каждые 120 секунд, в нашем примере мы установили этот параметр на 30 секунд.
Дальше представим, что мы хотим отслеживать переход пользователя к определенному view controller’у - в нашем случае, к единственному созданному нами GATViewController
. Для этого приводим GATViewController.m
к следующему виду:
В приведенном примере строчка с единицей создает ссылку на объект трекера. Во второй строке мы задаем имя для данного view controller’а (в нашем случае Screen Alpha
), которое как раз и будет отображаться в админке Google Analytics при просмотре статистики пользования приложением. Третья строка необходима для отправки данных о просмотренном экране.
Теперь можно запустить получившееся приложение и открыть в Google Analytics вкладку обзора приложения в режиме реального времени. Мы получим нечто, похожее на рис. 4. В нашем примере я последовательно запустил приложение 5 раз, что видно на левом графике в виде 5 последовательных столбцов.
Общая сводка статистики по приложению получилась как на рис. 5.
Из общей сводки видно, что в приложении появился 1 новый пользователь, он заходил из России с использованием iPhone.
Заключение
Google Analytics представляет собой довольно интересный продукт для отслеживания статистики использования мобильных приложений. К преимуществам можно смело отнести относительную простоту его интеграции в iOS-приложение.
Тем не менее, продукт обладает и некоторыми недостатками:
- Небрежно составленная документация: полное отсутствие единого стиля вызовов трекера и синтаксические ошибки в коде (да-да, я и не знал, что такое возможно в случае такой солидной компании как Google - обратите внимание хотя бы на двоеточие в методе
- (void)initializeGoogleAnalytics: {
из последнего примера на этой странице). - Громоздкость интерфейса админки. Серьезно. Я все понимаю, сервис мощный и богатый, но зачем же так издеваться над пользователями?
Тем не менее, я настоятельно рекомендую всем желающим ознакомиться с документацией по iOS SDK для Google Analytics.