Installation and initialization

AppMetrica Xamarin is a plugin for using AppMetrica features if you are developing apps using Xamarin for Android and iOS.

The general flow of using the plugin is shown below:

The plugin is provided as projects containing the following libraries:

YandexMetricaPCL

This library implements an interface for working with cross-platform parts of the app. The library contains:

  • The general AppMetrica interface — IYandexMetrica.
  • The static proxy class YandexMetrica for working via this interface with an implementation for the current platform.
  • The stub YandexMetricaDummy (which implements the IYandexMetrica interface), used if no implementation has performed registration in the YandexMetrica proxy class.
YandexMetricaAndroid

The library contains an AAR file of the AppMetrica library, generated code for working with the methods of the library and the YandexMetricaImplementation class, which implements the IYandexMetrica interface.

YandexMetricaiOS

The library contains A files for the AppMetrica library, generated code for working with the methods of the library and the YandexMetricaImplementation class, which implements the IYandexMetrica interface.

Connecting AppMetrica to a project

To integrate AppMetrica in your project, you need to:

  1. Download and enable the plugin libraries. There are several ways to do this:

    • Connect the projects YandexMetrica.Xamarin.PCL, YandexMetrica.Xamarin.iOSBinding and YandexMetrica.Xamarin.AndroidBinding.

    • Build and enable the libraries from the projects. After building, the libraries will be available in the directories:

      • YandexMetrica.Xamarin.PCL/bin/(Debug|Release)/YandexMetrica.Xamarin.PCL.dll
      • YandexMetrica.Xamarin.iOSBinding/bin/(Debug|Release)/YandexMetrica.Xamarin.iOS.dll
      • YandexMetrica.Xamarin.AndroidBinding/bin/(Debug|Release)/YandexMetrica.Xamarin.Android.dll
  2. Initialize the AppMetrica library using the Activate() method of the YandexMetricaImplementation class. This method also performs registration of the IYandexMetrica interface implementation.

    public static void Activate(Context context, YandexMetricaConfig config, Application app = null) {...}
    Parameter Default value Description
    config

    Extended startup configuration. To create it, pass apiKey: YandexMetricaConfig(string apiKey)

    app null

    Allows enabling or disabling automatic app lifecycle tracking. By default, tracking is disabled.

    If this parameter takes the null value, for correct displays of sessions, use the OnPause() and OnResume() methods of the YandexMetricaImplementation class in the corresponding sections of the project

    Parameter Default value Description
    config

    Extended startup configuration. To create it, pass apiKey: YandexMetricaConfig(string apiKey)

    app null