Справка по классу GAI

Обзор

Класс верхнего уровня Google Analytics для iOS.

Предоставляет средства для создания счетчиков и установки настроек предпочтения.

Класс наследует NSObject.

Методы экземпляра

(id< GAITracker >) – trackerWithName:trackingId:
 Создает или извлекает реализацию GAITracker с указанным названием и идентификатором отслеживания. Подробнее...
 
(id< GAITracker >) – trackerWithTrackingId:
 Создает или извлекает реализацию GAITracker с названием, соответствующим указанному идентификатору отслеживания. Подробнее...
 
(void) – removeTrackerByName:
 Удаляет счетчик из словаря. Подробнее...
 
(void) – dispatch
 Передает информацию, ожидающую отправки. Подробнее...
 
(void) – dispatchWithCompletionHandler:
 Отправляет следующий маркер отслеживания в очереди. При этом вызывается обработчик completionHandler после отправки маркера (в этом случае возвращается kGAIDispatchGood) или при возникновении ошибки (тогда передается kGAIDispatchError). Подробнее...
 

Методы класса

(GAI *) sharedInstance
 Возвращает общий экземпляр класса Google Analytics для iOS. Подробнее...
 

Ресурсы

id< GAITracker > defaultTracker
 Возвращает экземпляр счетчика по умолчанию. Подробнее...
 
id< GAILogger > logger
 GAILogger, который нужно использовать. Подробнее...
 
BOOL optOut
 Если установлено значение true, система не станет собирать статистику, а вызовы кода отслеживания будут пустыми. Подробнее...
 
NSTimeInterval dispatchInterval
 Если установлено положительное значение, данные отслеживания будут автоматически отправляться с интервалом, равным dispatchInterval. Подробнее...
 
BOOL trackUncaughtExceptions
 Если установлено значение true, SDK будет записывать показания зарегистрированного в настоящий момент обработчика исключений, а затем получать данные от обработчика исключений, которые произошли при использовании defaultTracker. Подробнее...
 
BOOL dryRun
 Если установлено значение YES, данные отслеживания отправляться не будут. Подробнее...
 

Документация по методу

+ (GAI *) sharedInstance

Возвращает общий экземпляр класса Google Analytics для iOS.

– (id<GAITracker>) trackerWithName: (NSString *)  name
trackingId: (NSString *)  trackingId 

Создает или извлекает реализацию GAITracker с указанным названием и идентификатором отслеживания.

Если счетчика с указанным названием не существует, он будет создан и возвращен. В противном случае система передает существующий. Если он имеет другой идентификатор отслеживания, этот идентификатор не изменяется. Если defaultTracker не установлен, им становится возвращенный экземпляр.

Параметры
nameНазвание счетчика. Оно не должно быть пустым или иметь значение nil.
trackingIDИдентификатор отслеживания, используемый в этом счетчике. У него должен быть формат UA-xxxxx-y.
Что будет возвращено
GAITracker, связанный с указанным названием. Этот счетчик можно использовать для отправки данных отслеживания в Google Analytics. Когда этот метод впервые вызывается с определенным названием, возвращается соответствующий счетчик. Все последующие вызовы с этим названием будут получать тот же экземпляр. Сохранять счетчик нет необходимости – он будет автоматически добавлен в библиотеку.

В случае ошибки или недопустимого названия будет возвращено значение nil.

– (id<GAITracker>) trackerWithTrackingId: (NSString *)  trackingId

Создает или извлекает реализацию GAITracker с названием, соответствующим указанному идентификатору отслеживания.

Если счетчик с таким названием не существует, он создается и возвращается. Ему также назначается идентификатор отслеживания |trackingId|. Если же такой счетчик есть, возвращается он. Если у него другой идентификатор отслеживания, этот идентификатор не меняется. В случаях, когда параметр defaultTracker не задан, счетчиком по умолчанию становится возвращенный экземпляр.

Параметры
trackingIDИдентификатор отслеживания, используемый в этом счетчике. У него должен быть формат UA-xxxxx-y. Название счетчика будет совпадать со значением trackingID.
Что будет возвращено
GAITracker, связанный с указанным trackingID. Этот счетчик можно использовать для отправки данных отслеживания в Google Analytics. Когда этот метод впервые вызывается с определенным идентификатором trackingID, возвращается соответствующий счетчик. Все последующие вызовы с этим названием будут получать тот же экземпляр. Сохранять счетчик нет необходимости – он будет автоматически сохранен в библиотеке.

В случае ошибки или некорректного идентификатора trackingID будет возвращено значение nil.

– (void) removeTrackerByName: (NSString *)  name

Удаляет счетчик из словаря.

Если это счетчик по умолчанию, он тоже удаляется.

Параметры
nameНазвание счетчика.
- (void) dispatch

Передает информацию, ожидающую отправки.

Внимание! Этот параметр никак не влияет на значение dispatchInterval. Его можно использовать при периодической отправке.

– (void) dispatchWithCompletionHandler: (void(^)(GAIDispatchResult result))  completionHandler

Отправляет следующий маркер отслеживания в очереди. Обработчик completionHandler вызывается после отправки маркера (в этом случае возвращается kGAIDispatchGood) или при возникновении ошибки (тогда передается kGAIDispatchError).

Если нет подключения к сети или данных для отправки, возвращается значение kGAIDispatchNoData.

Вызов этого метода с ненулевым значением completionHandler отключает периодическую отправку. Чтобы активировать ее повторно, нужно установить для dispatchInterval положительное значение, когда приложение выйдет из фонового режима.

Вызов этого метода с нулевым значением completionHandler ничем не отличается от описанного выше вызова dispatch.

Этот метод можно использовать для фонового вызова данных в iOS 7.0 и более поздних версиях. Его лучше всего запускать при выходе из приложения, чтобы инициировать передачу всех неотправленных данных отслеживания.

Параметры
completionHandlerБлокировка, выполняемая после одного запроса отправки. Параметр GAIDispatchResult указывает на результат этой операции: успешно, ошибка или нет данных по обращениям.

Документация по ресурсам

– (id<GAITracker>) defaultTracker
(readwrite, nonatomic, assign)

Возвращает экземпляр счетчика по умолчанию.

При инициализации устанавливается значение nil, которое заменяется на первый счетчик, создаваемый в trackerWithTrackingId:. При необходимости это значение можно изменить.

Класс GAITrackedViewController будет по умолчанию использовать этот экземпляр счетчика.

– (id<GAILogger>) logger
(readwrite, nonatomic, retain)

GAILogger, который нужно использовать.

– (BOOL) optOut
(readwrite, nonatomic, assign)

Если установлено значение true, система не станет собирать статистику, а вызовы кода отслеживания будут пустыми.

Если установлено значение true, вся информация, ожидающая загрузки, будет удалена. SDK автоматически сохраняет значение этой настройки. Разработчики могут использовать ее, чтобы предоставить пользователям возможность отказаться от отслеживания Google Analytics.

При первом использовании SDK Google Analytics на устройстве устанавливается значение NO, которое сохраняется в дальнейшем.

– (NSTimeInterval) dispatchInterval
(readwrite, nonatomic, assign)

Если установлено положительное значение, данные отслеживания будут автоматически отправляться с интервалом, равным dispatchInterval.

В противном случае данные отслеживания необходимо отправлять вручную с помощью вызова dispatch.

По умолчанию используется значение 120, то есть данные отслеживания отправляются каждые 120 сек.

– (BOOL) trackUncaughtExceptions
(readwrite, nonatomic, assign)

Если установлено значение true, SDK будет записывать показания зарегистрированного в настоящий момент обработчика исключений, а затем получать данные от обработчика исключений, которые произошли при использовании defaultTracker.

Если для defaultTracker не установлено значение nil, эта функция будет отслеживать исключения и в течение 5 сек. будет пытаться отправлять ожидающие данные отслеживания. Затем будет вызываться предыдущий зарегистрированный обработчик исключений (при его наличии). При возвращении значения false восстанавливается предыдущий зарегистрированный обработчик.

– (BOOL) dryRun
(readwrite, nonatomic, assign)

Если установлено значение YES, данные отслеживания отправляться не будут.

Значение по умолчанию – NO.