YMMYandexMetricaReporting protocol

Instance methods

pauseSession()

Pauses the user session.

reportError(_:exception:onFailure:)
Sends a custom error message.
Attention. Outdated method.
reportError(error:onFailure:)

Sends a YMMErrorRepresentable message.

reportError(error:options:onFailure:)

Sends a YMMErrorRepresentable message.

reportNSError(error:onFailure:)

Sends an NSError message.

reportNSError(error:options:onFailure:)

Sends an NSError message.

reportEvent(_:onFailure:)

Sends a custom event message.

reportEvent(_:params:onFailure:)

Sends a custom event message with additional parameters.

reportRevenue(_:onFailure:)

Sends information about the purchase to the AppMetrica server.

reportUserProfile(_:onFailure:)

Sends information about the user profile update to the AppMetrica server.

resumeSession()

Resumes the session, or creates a new one if the session timeout has expired.

setStatisticsSending(_:)

Enables/disables sending statistics to the AppMetrica server.

setUserProfileID(_:)

Sets the ID of the user profile.

If the Profileid isn't sent, predefined attributes aren't displayed in the web interface.

Method descriptions

pauseSession()

func pauseSession()

Pauses the user session.

reportError(_:exception:onFailure:)

func reportError(_ name: String, exception: NSException?, onFailure: ((NSError) -> Void)?)
Sends a custom error message.
Attention. Outdated method.
Parameters:
name

Short name or description of the error.

exception

The instance of the NSException class.

onFailure

The block that is executed when an error occurs. The error is passed as a block argument.

report(error:onFailure:)

func report(error: YMMErrorRepresentable, onFailure: ((Error) -> Void)? = nil)

Sends a YMMErrorRepresentable message.

Note. For more information, see the YMMErrorRepresentable protocol description.
Parameters:
error

The error to send.

onFailure

The block that is executed when an error occurs. The error is passed as a block argument.

report(error:options:onFailure:)

func report(error: YMMErrorRepresentable, options: YMMErrorReportingOptions = [], onFailure: ((Error) -> Void)? = nil)

Sends a YMMErrorRepresentable message.

Use this method to set the send parameters.

Note. For more information, see the YMMErrorRepresentable protocol description.
Parameters:
error

The error to send.

options

Parameters for sending an error.

onFailure

The block that is executed when an error occurs. The error is passed as a block argument.

reportError(error:onFailure:)

func report(nserror error: Error, onFailure: ((Error) -> Void)? = nil)

Sends an NSError message.

AppMetrica uses the domain and code to group errors.

Limits for an NSError:
  • 200 characters for the domain.
  • 50 key-value pairs for userInfo, 100 characters for the key, and 2000 characters for the value.
  • 10 nested errors that use NSUnderlyingErrorKey as a key in userInfo.
  • 200 stack frames in the YMMBacktraceErrorKey backtrace as a key in userInfo.
If the value exceeds the limit, AppMetrica truncates it.
Note. You can send your own error backtrace in NSError. For more information, see the YMMBacktraceErrorKey constant description.
Parameters:
error

The error to send.

onFailure

The block that is executed when an error occurs. The error is passed as a block argument.

report(error:options:onFailure:)

func report(nserror error: Error, options: YMMErrorReportingOptions = [], onFailure: ((Error) -> Void)? = nil)

Sends an NSError message.

AppMetrica uses the domain and code to group errors.

Use this method to set the send parameters.

Limits for an NSError:
  • 200 characters for the domain.
  • 50 key-value pairs for userInfo, 100 characters for the key, and 2000 characters for the value.
  • 10 nested errors that use NSUnderlyingErrorKey as a key in userInfo.
  • 200 stack frames in the YMMBacktraceErrorKey backtrace as a key in userInfo.
If the value exceeds the limit, AppMetrica truncates it.
Note. You can send your own error backtrace in NSError. For more information, see the YMMBacktraceErrorKey constant description.
Parameters:
error

The error to send.

options

Parameters for sending an error.

onFailure

The block that is executed when an error occurs. The error is passed as a block argument.

reportEvent(_:onFailure:)

func reportEvent(_ name: String, onFailure: ((NSError) -> Void)?)

Sends a custom event message.

Parameters:
name

Short name or description of the event

onFailure

The block that is executed when an error occurs. The error is passed as a block argument.

reportEvent(_:params:onFailure:)

func reportEvent(_ name: String, parameters params: [NSObject : AnyObject]?, onFailure: ((NSError) -> Void)?)

Sends a custom event message with additional parameters.

Parameters:
name

Short name or description of the event

params

Parameters as “key-value” pairs.

onFailure

The block that is executed when an error occurs. The error is passed as a block argument.

reportRevenue(_:onFailure:)

func reportRevenue(_ revenueInfo: YMMRevenueInfo, onFailure: ((NSError) -> Void)?)

Sends information about the purchase to the AppMetrica server.

Parameters:
revenueInfo

The instance of the YMMRevenueInfo class which contains information about a purchase.

onFailure

The block that is executed when an error occurs. The error is passed as a block argument.

reportUserProfile(_:onFailure:)

func reportUserProfile(_ userProfile: YMMUserProfile, onFailure: ((NSError) -> Void)?)

Sends information about the user profile update to the AppMetrica server.

Parameters:
userProfile

The instance of the YMMUserProfileclass which contains information about the user profile.

onFailure

The block that is executed when an error occurs. The error is passed as a block argument.

resumeSession()

func resumeSession()

Resumes the session, or creates a new one if the session timeout has expired.

setStatisticsSending(_:)

func setStatisticsSending(_ enabled: Bool)

Enables/disables sending statistics to the AppMetrica server.

Note. Disable sending statistics to the reporter does not affect the sending of data from the main API key. But disabling data sending for the main API key stops sending statistics from all reporters.
Parameters:
enabled A flag indicating that sending statistics is enabled. The default value is true.

Possible values:

  • true — Sending statistics is enabled.
  • false — Sending statistics is disabled.

setUserProfileID(_:)

func setUserProfileID(_ userProfileID: String?)

Sets the ID of the user profile.

If the Profileid isn't sent, predefined attributes aren't displayed in the web interface.

Parameters:
userProfileID

User profile ID.