YMMYandexMetricaConfiguration class

This class contains the extended startup configuration for the library.

The parameters of the extended configuration are applied from the time of library initialization.

Instance methods

init?(apiKey:)

Initializes the instance of the YMMYandexMetricaConfiguration class with the specified API key.

Properties

apiKey

The API key of the application.

appForKids

Defines the application type as “children's” to match the rules for checking children's apps. If this option is enabled, the AppMetrica SDK doesn't send advertising IDs or location information.

Note. Use this property if you have an app for kids.
appVersion

App version.

crashReporting

Enables/disables collecting and sending information about app crashes.

handleActivationAsSessionStart

Defines the AppMetrica SDK initialization as the beginning of a session.

handleFirstActivationAsUpdate

Defines the first launch of the app as an update.

maxReportsInDatabaseCount

The maximum number of error reports stored in the internal DB.

location

Sets custom location of the device.

locationTracking

Enables/disables sending location of the device.

logs

Enables/disables logging the activity of the library.

preloadInfo

Sets the instance of the YMMYandexMetricaPreloadInfo class for tracking pre-installed apps.

sessionsAutoTracking

Enables/disables automatic tracking of the application lifecycle.

sessionTimeout

Sets the session timeout in seconds.

statisticsSending

Enables/disables sending statistics to the AppMetrica server.

Method descriptions

init?(apiKey:)

public init?(apiKey: String)

Initializes the instance of the YMMYandexMetricaConfiguration class with the specified API key.

Parameters:
apiKey

The API key of the application.

Returns:

The instance of the YMMYandexMetricaConfiguration class.

Property descriptions

apiKey

var apiKey: String { get }

The API key of the application.

appForKids

var appForKids: Bool

Defines the application type as “children's” to match the rules for checking children's apps. If this option is enabled, the AppMetrica SDK doesn't send advertising IDs or location information.

Note. Use this property if you have an app for kids.

appVersion

var appVersion: String?

App version.

crashReporting

var crashReporting: Bool

Enables/disables collecting and sending information about app crashes.

Possible values:
  • YES — Sending information about crashes is enabled.
  • NO — Sending information about crashes is disabled.

handleActivationAsSessionStart

var handleActivationAsSessionStart: Bool

Defines the AppMetrica SDK initialization as the beginning of a session.

This option is disabled by default.

Possible values:

handleFirstActivationAsUpdate

var handleFirstActivationAsUpdate: Bool

Defines the first launch of the app as an update.

Attention. If the first launch of the app is defined as an update, the installation is not shown as a new installation in reports, and is not attributed to partners.
Possible values:
  • YES — The first launch is defined as an update.
  • NO — The first launch is defined as a new installation.

maxReportsInDatabaseCount

var maxReportsInDatabaseCount: UInt { get set }

The maximum number of error reports stored in the internal DB.

The allowed range of values is [100; 10000]. Values outside this range are automatically replaced with values from the nearest range limits.

Default value: 1000.

Note. Separate databases are used for various apiKeys and independent limits on the number of events can be set for them. This parameter only affects the limit for the corresponding apiKey. To change the maximum allowed number of events for other apiKeys, use YMMReporterConfiguration.maxReportsInDatabaseCount.

location

var location: CLLocation?

Sets custom location of the device.

locationTracking

var locationTracking: Bool

Enables/disables sending location of the device.

By default, sending is enabled.

logs

var logs: Bool

Enables/disables logging the activity of the library.

Logging is disabled by default.

preloadInfo

var preloadInfo: YMMYandexMetricaPreloadInfo?

Sets the instance of the YMMYandexMetricaPreloadInfo class for tracking pre-installed apps.

For more information, see Tracking pre-installed apps.

sessionsAutoTracking

var sessionsAutoTracking: Bool

Enables/disables automatic tracking of the application lifecycle.

The option is enabled by default.

If the option is disabled, you should manually set up session control using the methods +pauseSession: and +resumeSession:. For more information, see Manual session tracking.

AppMetrica uses UIApplicationDidBecomeActiveNotification and UIApplicationWillResignActiveNotification to track sessions. The maximum session length is 24 hours. To extend the session after 24 hours, invoke the +resumeSession: method manually.

sessionTimeout

var sessionTimeout: UInt

Sets the session timeout in seconds.

The default value is 10 (minimum allowed value).

For more information about sessions, see Tracking user activity.

statisticsSending

var statisticsSending: Bool

Enables/disables sending statistics to the AppMetrica server.

Note. Disabling sending also turns off sending data from all reporters that initialized with a different apiKey.