Войти

Unity

Минимальные требования

Android

  • Android api level 14 (android 4.0).

  • Разрешение android.permission.INTERNET.

  • Разрешение android.permission.ACCESS_NETWORK_STATE.

  • Разрешение com.google.android.gms.permission.AD_ID.

  • Обязательно наличие в проекте библиотеки Google Play Services (модуль com.google.android.gms:play-services-ads-identifier).

  • Обязательно наличие в проекте библиотеки Google Play Install Referrer (модуль com.android.installreferrer:installreferrer).

  • Для приложений Huawei AppGallery обязательно наличие в проекте библиотеки Huawei Media Services (модуль com.huawei.hms:ads-identifier), чтобы MyTracker мог получить OAID.

iOS

  • iOS 9.0.

  • Подключенные фреймворки AdSupport, SystemConfiguration, CoreTelephony, CoreData, UIKit, iAd, StoreKit, AdServices, and AppTrackingTransparency.

  • Подключенная библиотека libz.tbd.

Интеграция

  • Импортируйте пакет myTracker.unitypackage (см. последнюю версию на https://github.com/myTrackerSDK/mytracker-unity/releases) в ваш Unity проект.

  • Для сборки Android версии необходимо добавить в проект зависимости с помощью Assets → Play Services Resolver → Android Resolver → Resolve Client Jars.

  • Для сборки iOS версии необходимо добавить зависимости с помощью CocoaPods, после создания xCode проекта.


AndroidManifest.xml

Средой Unity поддерживается слияние манифеста по умолчанию и манифестов, поставляемых вместе с различными плагинами. В случае ошибки или пост-обработки, возможно, потребуется ручное изменение манифеста Android-приложения. Для корректной работы в манифесте должны быть указаны разрешения:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="com.google.android.gms.permission.AD_ID"/>

Для отслеживания источников трафика в манифесте должны быть указаны сервис и ресивер:

<application>
    <receiver android:name="com.my.tracker.campaign.MultipleInstallReceiver"
              android:permission="android.permission.INSTALL_PACKAGES"
              android:exported="true">
        <intent-filter>
            <action android:name="com.android.vending.INSTALL_REFERRER"/>
        </intent-filter>
    </receiver>
    <service android:name="com.my.tracker.campaign.CampaignService" />

</application>

Proguard

Если вы используете Proguard, необходимо добавить исключения:

-keep class com.my.tracker.** { *; }
-dontwarn com.my.tracker.**
-keep class com.android.installreferrer.** { *; }
-keep class com.android.vending.billing.** { *; }
-keep class com.android.billingclient.api.** { *; }
-keep class com.google.android.gms.** { *; }

Cреда сборки Gradle обеспечивает импорт данных правил автоматически при обработке aar-файлов

Инициализация

Для корректной работы MyTracker SDK настройку и инициализацию трекера необходимо производить на начальном этапе инициализации приложения. Для инициализации трекера необходимо указать ваш SDK_KEY. До инициализации, при необходимости, можно настроить параметры трекера.

SDK_KEY генерируется автоматически после того, как вы добавите ваше приложение в MyTracker. Чтобы получить ключ, перейдите на страницу со списком приложений, выберите необходимое и во вкладке Обзор скопируйте ключ. Обратите внимание, что для сборки приложения на разных платформах необходим отдельный SDK_KEY для каждой из них.

public class YourMonoBehaviour : MonoBehaviour
{
    public void Awake()
    {
#if !UNITY_IOS && !UNITY_ANDROID
        return;
#endif

        // При необходимости настройте конфигурацию трекера
        var myTrackerConfig = MyTracker.MyTrackerConfig;
        // ...
        // Настройте параметры трекера
        // ...

        // Инициализируйте трекер в зависимости от платформы
#if UNITY_IOS
        MyTracker.Init("SDK_KEY_IOS");
#elif UNITY_ANDROID
        MyTracker.Init("SDK_KEY_ANDROID");
#endif
    }
}

API

Конфигурация трекера

Конфигурацию трекера можно настроить через экземпляр класса MyTrackerConfig, доступный через свойство MyTracker.MyTrackerConfig. Можно настраивать следующие параметры:

IsTrackingLaunchEnabled: сбор данных о запусках приложения. По умолчанию true.

Boolean IsTrackingLaunchEnabled { get; set; }

LaunchTimeout: интервал в секундах, в течение которого не будет засчитываться новый запуск и прерываться сессия при сворачивании приложения. По умолчанию 30 секунд. Можно установить значение в диапазоне 30-7200 секунд.

Int32 LaunchTimeout { get; set; }

BufferingPeriod: интервал в секундах, в течение которого события будут накапливаться на устройстве перед отправкой на сервер. По умолчанию 900 секунд. Можно установить значение в диапазоне 1-86400 секунд.

Int32 BufferingPeriod { get; set; }

ForcingPeriod: интервал в секундах после установки или обновления приложения, в течение которого события будут незамедлительно отправляться на сервер без локальной буферизации. По умолчанию 0 секунд (незамедлительная отправка выключена). Можно установить значение в диапазоне 0-432000 секунд (5 суток).

Int32 ForcingPeriod { get; set; }

IsTrackingLocationEnabled: сбор данных о местоположении. По умолчанию true для iOS и false для Android платформ.

Если ваше Android приложение запрашивает доступ к местоположению пользователя, рекомендуем включить передачу данных для более точной аналитики. В описании приложения в Google Play не забудьте указать «Да» в вопросе про сбор данных о местоположении.

Для Android платформы параметр выключен по умолчанию начиная с версии SDK 3.0.2

Boolean IsTrackingLocationEnabled { get; set; }

Region: регион, где расположен сервер сбора статистики.

С 1 марта 2023г. параметр region недействителен. Вне зависимости от выбранного значения данные будут отправляться на серверы, расположенные на территории Российской Федерации. Чтобы выбрать другой регион, обратитесь в службу поддержки

Необходимость изменить регион может возникнуть, например, в связи с требованиями законодательства. Доступные значения:

  • RegionEnum.RU — сервер, расположенный на территории Российской Федерации

  • RegionEnum.EU — сервер, расположенный на территории Европы

public RegionEnum Region { set; }

RegisterForSkAdAttribution: поддержка SKAdNetwork атрибуции. По умолчанию YES.

SKAdNetwork — это инструмент атрибуции от Apple, который позволяет связать установку приложения с рекламной кампанией, и при этом сохранить конфиденциальность пользователей.

По умолчанию при первом запуске приложения на устройствах iOS 14.5+, MyTracker SDK версии 2.1.2 и выше вызовет метод SKAdNetwork — RegisterForSkAdAttribution, чтобы передать в рекламную сеть информацию о связанной установке. Рекламная сеть в свою очередь может отправить данные в MyTracker. С версии iOS 15 копию данных можно отправить напрямую в MyTracker, без посредничества рекламных сетей.

Вы можете отключить параметр RegisterForSkAdAttribution и самостоятельно настроить вызов методов SKAdNetwork. Но без поддержки SKAdNetwork вам не удастся отследить атрибуцию по устройствам, пользователи которых не давали разрешения на трекинг.

Подробнее см. раздел iOS и SKAdNetwork и документацию Apple

Boolean RegisterForSkAdAttribution { get; set; }

Включение/выключение режима отладки

Включение/выключение режима отладки производится через статические свойства класса MyTracker. По умолчанию false.

Boolean IsDebugMode { get; set; }

Трекинг пользователей

Для получения статистики не только по устройствам, но и по пользователям, установите параметр customUserId. Это уникальный идентификатор пользователя в вашем