Класс AppMetrica

Методы класса используются для настройки работы библиотеки.

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

activate(with:)

Инициализирует библиотеку в приложении с расширенной стартовой конфигурацией.

activateReporter(with:)

Инициализирует репортер с расширенной конфигурацией.

clearAppEnvironment()

Удаление всех данных ключ-значение, связанных со всеми будущими событиями.

pauseSession()

Приостанавливает сессию.

reportAdRevenue(_:onFailure:)

Отправляет информацию о рекламной выручке на сервер AppMetrica.

reportECommerce(_:onFailure:)

Отправляет сообщение о ecommerce-событии.

reportEvent(name:onFailure:)

Отправляет сообщение о событии.

reportEvent(name:parameters:onFailure:)

Отправляет сообщение о событии с дополнительными параметрами.

reportExternalAttribution(_:from:onFailure:)

Отправляет данные о внешней атрибуции в AppMetrica.

reportRevenue(_:onFailure:)

Отправляет информацию о покупке на сервер AppMetrica.

reportUserProfile(_:onFailure:)

Отправляет информацию об обновлении пользовательского профиля.

reporter(for:)

Создает репортер для отправки событий на дополнительный API key.

requestStartupIdentifiers(for:on:completion:)

Запрашивает идентификаторы для определенных ключей.

requestStartupIdentifiers(on:completion:)

Запрашивает все предопределенные идентификаторы.

resumeSession()

Возобновляет сессию или создает новую, если тайм-аут сессии истек.

sendEventsBuffer()

Отправляет сохраненные события из буфера.

setAppEnvironment(:forKey:)

Устанавливает пару ключ-значение, которая ассоциирована со всеми будущими событиями.

setDataSendingEnabled(_:)

Включает/отключает отправку статистики на сервер AppMetrica.

setupWebViewReporting(with:onFailure:)

Добавляет для указанной вебвью JavaScript-интерфейс с названием AppMetrica в window. Это позволяет отправлять клиентские события из JavaScript-кода.

trackOpeningURL(_:)

Обрабатывает URL, который открыл приложение.

Свойства

allowsBackgroundLocationUpdates

Включить/отключить фоновое отслеживание обновлений местоположения.

customLocation

Устанавливает собственную информацию о местоположении устройства.

deviceIDHash

Текущий appmetrica_device_id_hash.

deviceID

Текущий appmetrica_device_id.

isAccurateLocationTrackingEnabled

Контролирует точность отслеживания местоположения, используемого внутренним менеджером местоположения.

isActivated

Указывает, была ли активирована AppMetrica.

isLocationTrackingEnabled

Включает/отключает отправку информации о местоположении устройства.

libraryVersion

Текущая версию библиотеки AppMetrica.

userProfileID

Устанавливает ID для пользовательского профиля.

uuid

Текущий UUID.

Описание методов

activate(with:)

class func activate(with: AppMetricaConfiguration)

Инициализирует библиотеку в приложении с расширенной стартовой конфигурацией.

Параметры:

with

Объект класса AppMetricaConfiguration, который содержит расширенную стартовую конфигурацию библиотеки.

activateReporter(with:)

class func activateReporter(with: ReporterConfiguration)

Инициализирует репортер с расширенной конфигурацией.

Конфигурация репортера должна быть инициализирована до первого обращения к репортеру. Иначе конфигурация репортера игнорируется.

Репортер должен быть инициализирован с конфигурацией, которая содержит API key, отличный от API key приложения.

Параметры:

with

Объект класса ReporterConfiguration, который содержит расширенную конфигурацию репортера.

clearAppEnvironment()

class func clearAppEnvironment()

Очистка среды приложения, например, удаление всех данных ключ - значение, связанных со всеми будущими событиями.

pauseSession()

class func pauseSession()

Приостанавливает сессию.

Примечание

Длительность сессии зависит от заданного таймаута. Если интервал между приостановкой и возобновлением сессии меньше заданного времени тайм-аута, то текущая сессия будет возобновлена, если больше — будет создана новая.

Подробнее о сессиях в разделе Отслеживание активности пользователей.

reportAdRevenue(_:onFailure:)

class func reportAdRevenue(_ adRevenue: AdRevenueInfo, onFailure: ((Error) -> Void)?)

Отправляет информацию о рекламной выручке на сервер AppMetrica.

Параметры:

adRevenue

Объект класса AdRevenueInfo, который содержит информацию о рекламной выручке.

onFailure

Callback-метод, который будет вызван в случае ошибки.

reportECommerce(_:onFailure:)

class func reportECommerce(_ eCommerce: ECommerce, onFailure: ((Error) -> Void)?)

Отправляет сообщение о ecommerce-событии.

Параметры:

eCommerce

Объект класса ECommerce.

onFailure

Callback-метод, который будет вызван в случае ошибки.

reportEvent(name:onFailure)

class func reportEvent(name: String, onFailure: ((Error) -> Void)?)

Отправляет сообщение о событии.

Параметры:

name

Короткое название или описание события.

onFailure

Блок, который выполняется при возникновении ошибки. Ошибка передается как блок-аргумент.

reportEvent(name:parameters:onFailure)

class func reportEvent(name: String, parameters: [AnyHashable : Any]?, onFailure: ((Error) -> Void)?)

Отправляет сообщение о событии с дополнительными параметрами.

Параметры:

name

Короткое название или описание события.

parameters

Параметры в виде пар ключ-значение.

onFailure

Callback-метод, который будет вызван в случае ошибки.

reportExternalAttribution(_:from:onFailure:)

class func reportExternalAttribution(_ attribution: [AnyHashable : Any], from source: AttributionSource, onFailure: ((any Error) -> Void)? = nil)

Отправляет данные о внешней атрибуции в AppMetrica.

attribution

Словарь содержит данные об атрибуции. Должен быть конвертируемым в JSON, иначе метод завершится запуском блока с ошибкой — onFailure.

source

Источник с данными об атрибуции. Список источников.

onFailure

Callback-метод, который будет вызван в случае ошибки. Ошибка передается в качестве аргумента.

reportRevenue(_:onFailure:)

class func reportRevenue(_ revenueInfo: RevenueInfo, onFailure: ((Error) -> Void)?)

Отправляет информацию о покупке на сервер AppMetrica.

Параметры:

revenueInfo

Объект класса RevenueInfo, который содержит информацию о покупке.

onFailure

Callback-метод, который будет вызван в случае ошибки.

reportUserProfile(_:onFailure:)

class func reportUserProfile(_ userProfile: UserProfile, onFailure: ((Error) -> Void)?)

Отправляет информацию об обновлении пользовательского профиля.

Параметры:

userProfile

Объект класса UserProfile, который содержит информацию о пользовательском профиле.

onFailure

Callback-метод, который будет вызван в случае ошибки.

reporter(for:)

class func reporter(for: String) -> AppMetricaReporting

Создает репортер для отправки событий на дополнительный API key.

Чтобы инициализировать репортер с расширенной конфигурацией, используйте метод activateReporter(with:). Конфигурация репортера должна быть инициализирована до первого обращения к репортеру. Иначе, конфигурация репортера игнорируется.

Параметры:

for

API key, отличный от API key приложения.

Возвращает:

Объект, реализующий протокол AppMetricaReporting для заданного API key приложения.

requestStartupIdentifiers(for:on:completion:)

class func requestStartupIdentifiers(for: [StartupKey], on: dispatch_queue_t?, completion: ([StartupKey : Any]?, Error?) -> Void)

Получение идентификаторов для определенных ключей

Параметры:

for

Массив идентификационных ключей для запроса. Смотрите StartupKey.

on

Очередь для отправки блока. Если значение равно нулю, используется основная очередь.

completion

Блок будет отправлен при появлении доступных идентификаторов или в случае ошибки.

Если они доступны на момент вызова - блок отправляется немедленно. Смотрите определение AMAIdentifiersCompletionBlock для получения более подробной информации о возвращаемых типах.

requestStartupIdentifiers(on:completion:)

class func requestStartupIdentifiers(on: dispatch_queue_t?, completion: ([StartupKey : Any]?, Error?) -> Void)

Получение всех предопределенных идентификаторов

Параметры:

on

Очередь для отправки блока. Если значение равно нулю, используется основная очередь.

completion

Блок будет отправлен при появлении доступных идентификаторов или в случае ошибки.

Предопределенными идентификаторами являются:

  • StartupKey.uuidKey
  • StartupKey.deviceIDHashKey
  • StartupKey.deviceIDKey

Если они доступны на момент вызова - блок отправляется немедленно. Смотрите определение AMAIdentifiersCompletionBlock для получения более подробной информации о возвращаемых типах.

resumeSession()

class func resumeSession()

Возобновляет сессию или создает новую, если таймаут сессии истек.

Примечание

Длительность сессии зависит от заданного таймаута. Если интервал между приостановкой и возобновлением сессии меньше заданного времени тайм-аута, то текущая сессия будет возобновлена, если больше — будет создана новая.

Подробнее о сессиях в разделе Отслеживание активности пользователей.

sendEventsBuffer()

class func sendEventsBuffer()

Отправляет сохраненные события из буфера.

AppMetrica SDK не отправляет события сразу после того, как оно произошло. Библиотека хранит данные о событиях в буфере. Метод sendEventsBuffer() отправляет данные из буфера и очищает его. Используйте этот метод для принудительной отправки сохраненных событий после прохождения важных сценариев пользователя.

Внимание

Частое использование метода может привести к повышению энергопотребления и расходу исходящего интернет-трафика.

setAppEnvironment(_:forKey:)

class func setAppEnvironment(_ value: String?, forKey: String)

Установка данных ключ - значение, которые будут использоваться в качестве дополнительной информации, связанной со всеми будущими событиями.

Если значение равно нулю, ранее установленное значение ключа удаляется. Ничего не делает, если ключ не был добавлен.

Параметры:

value

Значение.

key

Ключ.

setDataSendingEnabled(_:)

class func setDataSendingEnabled(_ enabled: Bool)

Включает/отключает отправку статистики на сервер AppMetrica.

Подробнее об использовании метода в разделе Отключение и включение отправки статистики.

Примечание

Отключение отправки для главного API key также отключает отправку данных со всех репортеров, которые были инициализированы с другим API key.

Параметры:

enabled

Признак отправки статистики. Значение по умолчанию — true.

Возможные значения:

  • true — отправка статистики включена.
  • false — отправка статистики выключена.

setupWebViewReporting(with:onFailure:)

class func setupWebViewReporting(with: JSControlling, onFailure: ((Error) -> Void)?)

Добавляет для указанной вебвью JavaScript-интерфейс с названием AppMetrica в window. Это позволяет отправлять клиентские события из JavaScript-кода.

Замечания:

  • Метод должен вызываться из главной очереди.
  • Метод недоступен на tvOS.
  • Метод необходимо вызывать до загрузки любого контента. Рекомендуется вызывать метод до создания вебвью и до добавления своих скриптов в WKUserContentController. Подробнее см. в разделе Примеры использования методов.

Параметры:

with

Объект JSControlling.

onFailure

Callback-метод, который будет вызван в случае ошибки.

trackOpeningURL(_:)

class func trackOpeningURL(_ URL: URL)

Обрабатывает URL, который открыл приложение.

Используется для регистрации открытия приложения с помощью deeplink

Параметры:

URL

URL, который открыл приложение.

Описание свойств

allowsBackgroundLocationUpdates

var allowsBackgroundLocationUpdates: Bool { get; set; }

Включить/отключить фоновое отслеживание обновлений местоположения. По умолчанию отключен.

customLocation

var customLocation: CLLocation? { get; set; }

Устанавливает собственную информацию о местоположении устройства.

deviceIDHash

var deviceIDHash: String? { get; }

Извлекает appmetrica_device_id_hash.

deviceID

var deviceID: String? { get; }

Извлекает appmetrica_device_id.

isAccurateLocationTrackingEnabled

var isAccurateLocationTrackingEnabled: Bool { get; set; }

Контролирует точность отслеживания местоположения, используемого внутренним менеджером местоположения.

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

isActivated

var isActivated: Bool { get; }

Указывает, была ли активирована AppMetrica.

Примечание

Используйте это свойство, чтобы проверить, была ли AppMetrica уже активирована, как правило, чтобы избежать избыточных вызовов активации или убедиться, что сбор статистики запущен.

isLocationTrackingEnabled

var isLocationTrackingEnabled: Bool { get; set; }

Включает/отключает отправку информации о местоположении устройства.

libraryVersion

var libraryVersion: String { get; }

Возвращает текущую версию библиотеки AppMetrica.

userProfileID

var userProfileID: String? { get; set; }

Устанавливает ID для пользовательского профиля. Если отправка ProfileId не настроена, предопределенные атрибуты не отображаются в веб-интерфейсе.

uuid

var uuid: String { get; }

Извлекает текущий UUID.