public interface IReporter

IReporter Интерфейс используется для отправки статистики с использованием API key, отличного от API key приложения YandexMetrica.activate(android.content.Context, com.yandex.metrica.YandexMetricaConfig).

Instance of object, использует IReporter, применяется с помощью вызова метода YandexMetrica.getReporter(android.content.Context, String).

Для каждого API-ключа создается только один объект IReporter. Вы можете вызывать его каждый раз при необходимости или сохранить его.

See Also:
YandexMetrica.activate(android.content.Context, com.yandex.metrica.YandexMetricaConfig), YandexMetrica.getReporter(android.content.Context, String)

Method Summary

All Methods
Instance Methods
Abstract Methods
Modifier and TypeMethod and Description
IPluginReportergetPluginExtension()
Создает IPluginReporter, который может отправлять события плагина этому репортеру.
voidpauseSession()
Приостанавливает сессию.
voidreportAdRevenue(AdRevenue adRevenue)
Отправляет информацию о рекламной выручке (Ad Revenue).
voidreportECommerce(ECommerceEvent event)
Отправляет сообщение о ECommerce-событии.
voidreportError(java.lang.String identifier, java.lang.String message)
Отправляет сообщение об ошибке с собственным идентификатором.
voidreportError(java.lang.String identifier, java.lang.String message, java.lang.Throwable error)
Отправляет сообщение об ошибке с собственным идентификатором.
voidreportError(java.lang.String message, java.lang.Throwable error)
Отправляет сообщение об ошибке с собственным идентификатором.
voidreportEvent(java.lang.String eventName)
Отправляет сообщение о событии.
voidreportEvent(java.lang.String eventName, java.util.Map<java.lang.String,java.lang.Object> attributes)
Отправляет сообщение о событии в виде набора атрибутов (Map).
voidreportEvent(java.lang.String eventName, java.lang.String jsonValue)
Отправляет сообщение о событии в формате JSON в виде строки.
voidreportRevenue(Revenue revenue)
Отправляет информацию о покупке.
voidreportUnhandledException(java.lang.Throwable exception)
Отправляет отчет об аварийных остановках приложения.
voidreportUserProfile(UserProfile profile)
Отправляет информацию об обновлении пользовательского профиля на сервер AppMetrica.
voidresumeSession()
Возобновляет сессию.
voidsendEventsBuffer()
Отправляет сохраненные события из буфера.
voidsetStatisticsSending(boolean enabled)
Включает/отключает отправку статистики на сервер AppMetrica.
voidsetUserProfileID(java.lang.String profileID)
Устанавливает ID для пользовательского профиля.

Method Detail

sendEventsBuffer

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

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

ВНИМАНИЕ: Частое использование метода может привести к повышению энергопотребления и расходу исходящего интернет трафика.

reportEvent

void reportEvent(@NonNull
                 java.lang.String eventName)
Отправляет сообщение о событии.
Parameters:
eventName - Короткое название или описание события. Не может быть null.
Throws:
java.lang.IllegalArgumentException - Если eventName пусто.
See Also:
reportEvent(String)

reportEvent

void reportEvent(@NonNull
                 java.lang.String eventName,
                 @Nullable
                 java.lang.String jsonValue)
Отправляет сообщение о событии в формате JSON в виде строки.
Parameters:
eventName - Короткое название или описание события. Не может быть null.
jsonValue - Валидная JSON-строка с произвольным содержимым. В параметре eventValue, передайте JSONObject в виде объекта String или передайте объект String в Java JSON format. Максимальный уровень вложенности для JSON-объекта - 5.

ПРИМЕР:

                  
                   {
                       "firstName": "John",
                       "lastName": "Smith",
                       "age": 25,
                       "nickname": "JS"
                       "address": {
                           "streetAddress": "21 2nd Street",
                           "city": "New York",
                           "state": "NY",
                       },
                       "phoneNumbers": [
                           {
                               "type": "HOME",
                               "number": "212 555-1234"
                           },
                           {
                               "type": "FAX",
                               "number": "646 555-4567"
                           }
                       ]
                    }
                  
                  
Throws:
java.lang.IllegalArgumentException - Если eventName или jsonValue пустое.
See Also:
reportEvent(String, String), JSONObject.toString()

reportEvent

void reportEvent(@NonNull
                 java.lang.String eventName,
                 @Nullable
                 java.util.Map<java.lang.String,java.lang.Object> attributes)
Отправляет сообщение о событии в виде набора атрибутов (Map).
Parameters:
eventName - Короткое название или описание события. Не может быть null.
attributes - Набор атрибутов (Map). В параметре attributes, передайте Map с ключами типа String и значениями типов Boolean и String, и обертки для числовых типов Double и Integer, ...
Throws:
java.lang.IllegalArgumentException - Если eventName или attributes пустое.
See Also:
reportEvent(String, java.util.Map)

reportError

void reportError(@NonNull
                 java.lang.String message,
                 @Nullable
                 java.lang.Throwable error)
Отправляет сообщение об ошибке с собственным идентификатором. По нему группируются ошибки в отчетах. Используйте этот метод для сообщения о неожиданных ситуациях. Если вы хотите изменить группировку ошибок, используйте reportError(String, String, Throwable) or reportError(String, String)
Parameters:
message - Описание ошибки.
error - Объект класса Throwable с ошибкой. Может быть пустым.
Throws:
java.lang.IllegalArgumentException - Если message пустое.
See Also:
reportUnhandledException(Throwable)

reportError

void reportError(@NonNull
                 java.lang.String identifier,
                 @Nullable
                 java.lang.String message)
Отправляет сообщение об ошибке с собственным идентификатором. По нему группируются ошибки в отчетах. Используйте этот метод для сообщения о неожиданных ситуациях. Используйте этот метод, чтобы изменить группировку ошибок. Иначе используйте reportError(String, Throwable).
Parameters:
identifier - Идентификатор ошибки. По нему группируются ошибки в отчетах. Ошибки с одинаковыми id будут отнесены к одной группе. Не используйте динамически формируемые строки или сообщения об исключениях в качестве идентификаторов, чтобы избежать слишком большого количества групп ошибок. Не может быть null.
message - Описание ошибки.
Throws:
java.lang.IllegalArgumentException - Если identifier пустое.

reportError

void reportError(@NonNull
                 java.lang.String identifier,
                 @Nullable
                 java.lang.String message,
                 @Nullable
                 java.lang.Throwable error)
Отправляет сообщение об ошибке с собственным идентификатором. По нему группируются ошибки в отчетах. Используйте этот метод для сообщения о неожиданных ситуациях. Иначе используйте reportError(String, Throwable) error stacktrace will NOT be used for grouping, only identifier.
Parameters:
identifier - Идентификатор ошибки. По нему группируются ошибки в отчетах. Ошибки с одинаковыми id будут отнесены к одной группе. Не используйте динамически формируемые строки или сообщения об исключениях в качестве идентификаторов, чтобы избежать слишком большого количества групп ошибок. Не может быть null.
message - Описание ошибки. Может быть пустым.
error - Объект класса Throwable с ошибкой. Может быть пустым. Его стектрейс не будет учитываться при группировке ошибок.
Throws:
java.lang.IllegalArgumentException - Если identifier пустое.

reportUnhandledException

void reportUnhandledException(@NonNull
                              java.lang.Throwable exception)
Отправляет отчет об аварийных остановках приложения.
Parameters:
exception - Объект класса Throwable.
Throws:
java.lang.IllegalArgumentException - Если exception пустое.
See Also:
reportUnhandledException(Throwable)

resumeSession

void resumeSession()
Возобновляет сессию.

Метод для отслеживания активности пользователей.

Вызывается в Activity.onResume().
See Also:
Activity.onResume(), pauseSession()

pauseSession

void pauseSession()
Приостанавливает сессию.

Метод для отслеживания активности пользователей.

Вызывается в Activity.onPause().
See Also:
Activity.onPause(), resumeSession()

setUserProfileID

void setUserProfileID(@Nullable
                      java.lang.String profileID)
Устанавливает ID для пользовательского профиля. ПРИМЕЧАНИЕ: Значение типа Строка может содержать до 200 символов.
Parameters:
profileID - Идентификатор пользовательского профиля.

reportUserProfile

void reportUserProfile(@NonNull
                       UserProfile profile)
Отправляет информацию об обновлении пользовательского профиля на сервер AppMetrica.
Parameters:
profile - Объект UserProfile object. Содержит информацию о профифле пользователя.

reportRevenue

void reportRevenue(@NonNull
                   Revenue revenue)
Отправляет информацию о покупке.
Parameters:
revenue - Объект класса Revenue. Содержит информацию о покупке.

reportECommerce

void reportECommerce(@NonNull
                     ECommerceEvent event)
Отправляет сообщение о ECommerce-событии.
Parameters:
event - Объект класса ECommerceEvent.
See Also:
ECommerceEvent

setStatisticsSending

void setStatisticsSending(boolean enabled)
Включает/отключает отправку статистики на сервер AppMetrica. По умолчанию отправка включена.

ПРИМЕЧАНИЕ: Отключение отправки статистики для репортера не влияет на отправку данных с главного API key. Но отключение отправки данных для главного API key прекращает отправку статистики со всех репортеров.

Parameters:
enabled - Признак включения отправки статистики. Значение по умолчанию — true. Возможные значения: true — отправка статистики включена. false — отправка статистики выключена.

getPluginExtension

@NonNull
IPluginReporter getPluginExtension()

Создает IPluginReporter, который может отправлять события плагина этому репортеру.

Для каждого репортера создается только один экземпляр IPluginReporter.
Returns:
Экземпляр расширения плагина для этого репортера.

reportAdRevenue

void reportAdRevenue(@NonNull
                     AdRevenue adRevenue)
Отправляет информацию о рекламной выручке (Ad Revenue).
Parameters:
adRevenue - Объект класса AdRevenue.