Interface IReporter
public interface IReporter
IReporter
Интерфейс используется для отправки статистики с использованием API key, отличного от API key приложения YandexMetrica.activate(android.content.Context, com.yandex.metrica.YandexMetricaConfig)
.
IReporter
, применяется с помощью вызова метода YandexMetrica.getReporter(android.content.Context, String)
. Для каждого API-ключа создается только один объект IReporter
. Вы можете вызывать его каждый раз при необходимости или сохранить его.
Method Summary
Modifier and Type | Method and Description |
---|---|
IPluginReporter | getPluginExtension()
Создает
IPluginReporter , который может отправлять события плагина этому репортеру. |
void | pauseSession()
Приостанавливает сессию.
|
void | reportAdRevenue(AdRevenue adRevenue)
Отправляет информацию о рекламной выручке (Ad Revenue).
|
void | reportECommerce(ECommerceEvent event)
Отправляет сообщение о ECommerce-событии.
|
void | reportError(java.lang.String identifier, java.lang.String message)
Отправляет сообщение об ошибке с собственным идентификатором.
|
void | reportError(java.lang.String identifier, java.lang.String message, java.lang.Throwable error)
Отправляет сообщение об ошибке с собственным идентификатором.
|
void | reportError(java.lang.String message, java.lang.Throwable error)
Отправляет сообщение об ошибке с собственным идентификатором.
|
void | reportEvent(java.lang.String eventName)
Отправляет сообщение о событии.
|
void | reportEvent(java.lang.String eventName, java.util.Map<java.lang.String,java.lang.Object> attributes)
Отправляет сообщение о событии в виде набора атрибутов (Map).
|
void | reportEvent(java.lang.String eventName, java.lang.String jsonValue)
Отправляет сообщение о событии в формате JSON в виде строки.
|
void | reportRevenue(Revenue revenue)
Отправляет информацию о покупке.
|
void | reportUnhandledException(java.lang.Throwable exception)
Отправляет отчет об аварийных остановках приложения.
|
void | reportUserProfile(UserProfile profile)
Отправляет информацию об обновлении пользовательского профиля на сервер AppMetrica.
|
void | resumeSession()
Возобновляет сессию.
|
void | sendEventsBuffer()
Отправляет сохраненные события из буфера.
|
void | setStatisticsSending(boolean enabled)
Включает/отключает отправку статистики на сервер AppMetrica.
|
void | setUserProfileID(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)
- 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)
- 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)
- Parameters:
profileID
- Идентификатор пользовательского профиля.
reportUserProfile
void reportUserProfile(@NonNull UserProfile profile)
- Parameters:
profile
- ОбъектUserProfile
object. Содержит информацию о профифле пользователя.
reportECommerce
void reportECommerce(@NonNull ECommerceEvent event)
- Parameters:
event
- Объект классаECommerceEvent
.- See Also:
ECommerceEvent
setStatisticsSending
void setStatisticsSending(boolean enabled)
ПРИМЕЧАНИЕ: Отключение отправки статистики для репортера не влияет на отправку данных с главного API key. Но отключение отправки данных для главного API key прекращает отправку статистики со всех репортеров.
- Parameters:
enabled
- Признак включения отправки статистики. Значение по умолчанию —true
. Возможные значения:true
— отправка статистики включена.false
— отправка статистики выключена.
getPluginExtension
@NonNull IPluginReporter getPluginExtension()
Создает IPluginReporter
, который может отправлять события плагина этому репортеру.
IPluginReporter
.- Returns:
- Экземпляр расширения плагина для этого репортера.