Начало работы с MRGSMyTracker🔗
MyTracker - SDK для сбора статистики, подробнее читайте на официальном сайте. MRGS позволяет автоматически стартовать sdk и передавать в него большую часть необходимых событий и многое другое.
MyTracker поддерживается только для мобильных платформ.
Для интеграции, необходимо выполнить несколько простых шагов:
Шаг 1. Импортируйте модуль MRGSMyTracker🔗
Добавление в Unity проект (общая инструкция)
Шаг 1. Добавьте источники
Для того, чтобы добавить MRGS в проект через Unity Package Manager (доступно с Unity 2018+) просто добавьте в файл Packages/manifest.json раздел scopedRegistries, добавив в него следующую запись:
{
"dependencies": {
...
},
"scopedRegistries": [
{
"name": "MRGS",
"url": "https://mrgs-nexus.my.games/repository/mrgs-uninty-plugins/",
"scopes": [
"games.my.mrgs"
]
}
]
}
Альтернативно, можно нажать Edit -> Project Settings -> Package Manager -> '+' in scoped registry section, и заполнить поля в соответствии с данными выше.
Шаг 2. Добавьте зависимость
- Нажмите
Window -> Package Manager -> select 'Packages: MyRegistries' from dropdown list, выберите пакетMRGSMyTrackerиз списка, затем нажмите "Install" - Импортируйте модуль:
using MRGS;
- Загрузите последнюю версию библиотеки. Распакуйте архив.
- (Для интеграции unitypackage) В Unity нажмите
Assets -> Import Package -> Custom Package, и выберите пакетgames.my.mrgs.mytracker.unitypackageиз скачанного архива. - (Для интеграции tgz) В Unity нажмите
Window -> Package Manager -> '+' -> Add package from tarball, и выберите пакетgames.my.mrgs.mytracker-<version>.tgzиз скачанного архива. - Импортируйте модуль:
using MRGS;
Добавление в iOS проект (общая инструкция)
Шаг 1. Добавьте зависимости
Через Package collection
- В Xcode выберите File > Add Packages
- Выберите «+» > "Add Swift Package Collection"
- Вставьте URL:
https://mrgs-nexus.my.games/repository/ios-sdks/MRGSPackageCollection.json - Выберите модуль MRGSMyTracker из "MRGS Package Collection".
- Или вы можете выбрать пакет «MRGS» из "MRGS Package Collection" (содержит все модули mrgs в качестве продуктов), а затем выбрать только продукт "MRGS/MyTracker".
Отдельными пакетами
- В Xcode выберите File > Add Packages
- В строке поиска в правом верхнем углу вставьте URL:
https://mrgs-gitea.my.games/mrgs/mrgsmytracker-ios-sdk.git - Добавьте модуль в свой проект
- Или вы можете вставить URL
https://mrgs-gitea.my.games/mrgs/ios-sdks.git, чтобы подключить пакет "MRGS", который содержит все модули mrgs в качестве продуктов, а затем выбрать только продукт "MRGS/MyTracker".
Шаг 2. Добавьте поддержку категорий ObjectiveC
- В настройках проекта установите флаг
-ObjCв поле "Other linker Flags". - Импортируйте модуль в коде:
@import MRGServiceKit;или@import MRGSMyTracker;или#import <MRGSMyTracker/MRGSMyTracker.h>
Шаг 1. Добавьте источники
В вашем podfile добавьте источники в начало файла:
source 'https://github.com/CocoaPods/Specs.git' # For main repo
source 'https://mrgs-gitea.my.games/mrgs/cocoapods-specs.git' # For MRGS repo
Шаг 2. Добавьте зависимости
В target добавьте последнюю версию MRGSMyTracker:
Чтобы добавить через subspecs:
Для добавления через отдельные модули:
Чтобы добавить все модули mrgs:
Шаг 3. Установите зависимости
- Выполните
pod install(илиpod install --repo-updateесли необходимо) - Импортируйте модуль в коде:
@import MRGServiceKit;или@import MRGSMyTracker;или#import <MRGSMyTracker/MRGSMyTracker.h>
Шаг 1. Добавьте зависимости
Добавьте зависимость в ваш Cartfile:
Шаг 2. Установите зависимости
- Выполните
carthage update --use-xcframeworks - Добавьте загруженные фреймворки в свой проект (убедитесь, что опция "do not embed" включена)
- В настройках проекта установите флаг
-ObjCв поле "Other linker Flags". - Импортируйте модуль в коде:
@import MRGServiceKit;или@import MRGSMyTracker;или#import <MRGSMyTracker/MRGSMyTracker.h>
- Загрузите последнюю версию библиотеки. Распакуйте архив.
-
Добавьте
MRGSMyTracker.xcframeworkиз скачанного архива в ваш проект (Перетащите библиотеки в раздел "Linked frameworks and Libraries") (для совместимости в архиве также находится MRGSMyTracker.framework - fat framework старого вида) -
В настройках проекта установите флаг
-ObjCв поле "Other linker Flags". - Импортируйте модуль в коде:
@import MRGSMyTracker;или#import <MRGSMyTracker/MRGSMyTracker.h> - Также, вы можете добавить из архива файлы
MRGServiceKit.hиmodule.modulemapв свой проект, либо в настройках проекта укажите путь до них в разделеBuild Settings -> Header search paths. Теперь вместо импорта каждого из наших фреймворков по отдельности, вы можете импортировать только один заголовочный файл:@import MRGServiceKit;
Добавление в Android проект
Скопируйте файл MRGSMyTracker.aar в директорию libs вашего проекта. Добавьте необходимые зависимости в файл build.gradle
С версии 6.0.0-a MyTracker является отдельным модулем
Huawei/AppTouch Store
Добавьте зависимость согласно документации
Шаг 2. Предварительная настройка и инициализация🔗
При старте SDK MRGS необходимо передать параметры (MY_TRACKER_SDK_KEY) и настройки для MyTracker:
@import MRGService;
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// MRGService settings
MRGServiceParams *mrgsParams = [[MRGServiceParams alloc] initWithAppId: <MRGS_APP_ID> secret: <CLIENT_SECRET>];
// MyTracker
MRGSMyTrackerParams *myTrackerParams = [[MRGSMyTrackerParams alloc] initWithAppId: <MY_TRACKER_SDK_KEY>];
myTrackerParams.forwardMetrics = YES; // All MRGS metrics sent through the MRGSMetrics class will automatically be sent to MyTracker
//Start MRGS
[MRGService startWithServiceParams:mrgsParams externalSDKParams:@[myTrackerParams] delegate:nil];
}
import java.util.ArrayList;
import java.util.List;
import games.my.mrgs.MRGSModuleParams;
import games.my.mrgs.MRGSPlatform;
import games.my.mrgs.MRGService;
import games.my.mrgs.MRGServiceParams;
import games.my.mrgs.my.tracker.MRGSMyTrackerParams;
public class YourApplicationClass extends Application {
@Override
public void onCreate() {
super.onCreate();
final MRGServiceParams serviceParams = MRGServiceParams.init(<MRGS_APP_ID>, <CLIENT_SECRET>, MRGSPlatform.ANDROID);
serviceParams.setDebuggable(false);
// Settings for MRGSModules
final List<MRGSModuleParams> moduleParams = new ArrayList<>();
// Setting MyTracker
final MRGSMyTrackerParams myTrackerParams = MRGSMyTrackerParams.init("MY_TRACKER_SDK_KEY");
myTrackerParams.setDebuggable(false);
moduleParams.add(myTrackerParams);
MRGService.service(context, serviceParams, moduleParams);
}
}
MY_TRACKER_SDK_KEY
MY_TRACKER_SDK_KEY - SDK ключ библиотеки MyTracker. Его можно получить на сайте MyTracker в разделе настройки вашего приложения ![]()
Важно! Не забывайте что этот параметр отличается для Android и iOS сборки. Используйте правильные ключи инициализации
Шаг 3. Трекинг входа🔗
Для корректного подсчета игровой статистики (число регистраций и авторизаций, а также платежи LifeTime) в системе MyTracker/1link, необходимо сообщать об этих событиях с помощью методов:
Внимание!
trackLoginEvent необходимо вызвать в любом случае - была ли регистрация или авторизация пользователя. Метод trackRegistrationEvent должен быть вызван только при регистрации (создании) учетной записи пользователя. Оба этих метода должны быть вызваны после вызова метода MRGSUsers#setUserId иначе события будут переданы без идентификатора пользователя и статистика будет неточной.
Автоматическая отправка событий🔗
MRGS автоматически вызовет следующие методы MyTracker для передачи необходимых событий:
- При инициализации MyTracker будет установлен параметр customUserId. Туда будет передан USER_ID, если есть сохраненный с прошлого сеанса
- После получения deviceId будет вызван метод setMrgsId с полученным deviceId
- При вызове метода
MRGSUsers#setUserIdбудет установлен параметр customUserId у MyTracker - При отправке метрики будет вызван метод trackEvent, если не был отключен форвардинг метрик
- Для Unity, при запуске игры, будет вызван метод trackLaunchManually
- При совершении платежа на Android будет вызван метод trackPurchaseEvent. На iOS MyTracker самостоятельно подписывается на очередь транзакций для отслеживания совершаемых платежей.
Отправка событий🔗
С помощью этого API Вы сможете отправлять события в MyTracker напрямую. Например:
Управление параметрами отправки🔗
Вы можете установить интервал в секундах, в течение которого события будут накапливаться на устройстве перед отправкой на сервер. По умолчанию 900 секунд. Можно установить значение в диапазоне 1-86400 секунд.
Также вы можете установить интервал в секундах, в течение которого события будут накапливаться на устройстве перед отправкой на сервер. По умолчанию 900 секунд. Можно установить значение в диапазоне 1-86400 секунд (1 день).
Также вы можете установить интервал в секундах, в течение которого новый запуск не отслеживается и сеанс не прерывается, пока приложение находится в фоновом режиме. Диапазон возможных значений: 30-7200 секунд. По умолчанию 30 секунд.
Для немедленной отправки накопленных событий, воспользуйтесь методом flush (Мы не рекомендуем вызывать его слишком часто).
Получение данных из MyTracker🔗
Для получения уникального идентификатора InstanceID для S2S отправки событий, воспользуйтесь методом:
Работа с атрибуцией (Deeplink и Deffered deeplink)🔗
Для поддержки диплинков и отложенных диплинков (Deeplink или Deffered deeplink) в своем приложении необходимо установить делегат (не важно до или после запуска MRGS), для получения информации о них. Делегат будет вызван при первом запуске приложения в случае, если для текущей установки был найден отложенный диплинк, а также каждый раз при запуске приложения по диплинку. В качестве параметра при вызове будет передан объект атрибуции MRGSMyTrackerAttribution, содержащий свойство deeplink:
// Установка делегата:
// Где self - объект, реализующий протокол MRGSMyTrackerAttributionDelegate
[MRGSMyTracker setAttributionDelegate: self];
// Реализация делегата:
- (void)didReceiveAttribution:(nonnull MRGSMyTrackerAttribution *)attribution {
NSLog(@"MRGSMyTracker didReceiveAttribution delegate called with data - %@", attribution.deeplink);
}
Диплинки позволяют при запуске приложения передавать в него дополнительные параметры. Эти параметры могут быть использованы для перехода на определенный экран приложения. Отложенные диплинки позволяют передать в приложение дополнительные параметры при первом запуске после установки. Эти параметры могут быть использованы точно так же, как и в случае обычных диплинков.
Для настройки отложенных диплинков от MyTracker, обратитесь к документации MyTracker.
Управление отслеживанием событий из MRGSMetrics🔗
По умолчанию MRGSMetrics дублирует события в MyTracker. Если по какой-то причине вам нужно отключить отправку, просто добавьте настройку при настройке параметров:
Выставление customUserID🔗
Если вы хотите выставлять собственный userId, вам необходимо вызвать указанный метод до инициализации MRGS, передав туда null (тогда при старте SDK мы не будем проставлять никаких данных в это поле), и после того, как у вас появится userId, выставить его через указанный метод. Также, можно сразу выставить ваш userId до старта MRGS.
Отслеживание местоположения🔗
MRGS по умолчанию отключает отслеживание местоположения пользователя в MyTracker, если вам по какой-то причине нужно изменить данное поведение, то просто добавьте настройку при настройке параметров:
Дата создания: 2020-01-20