Подключение Android SDK🔗
Минимальные требования🔗
Минимальная поддерживаемая версия Android 4.4 (api 19);
Интеграция🔗
Шаг 1 - Добавьте библиотеку в проект🔗
Установите MRGS SDK, используя предпочитаемый вами метод: через Maven или Ручная установка. А так же не забудьте подключить сервисы в зависимости от того через какой магазин вы планируете распространять ваше приложение.
Gradle - Maven установка🔗
- Добавьте MRGS Maven репозиторий в корневой
build.gradle(дляcom.android.tools.build:gradle:7.0.4и ниже ) или вsettigns.gradle(дляcom.android.tools.build:gradle:7.1.0и выше) файл вашего проекта:
- Добавьте следующие зависимости в файл
build.gradleвашего приложения:
Gradle - Ручная установка🔗
- Загрузите последнюю версию библиотеки с сайта MRGS. Распакуйте архив.
- Скопируйте из архива файл MRGService.aar в директорию с библиотеками своего проекта (обычно libs)
- Добавьте директорию libs в раздел flatDir списка репозиториев в build.gradle
Google Play Store - Подключение сервисов🔗
Если ваше приложение нацелено на Google Play Store, то следует добавить следующие зависимости:
dependencies {
implementation 'com.google.android.gms:play-services-ads-identifier:18.0.1'
implementation 'com.google.android.gms:play-services-appset:16.0.2'
}
Huawei/AppTouch Store - Подключение сервисов🔗
Если ваше приложение нацелено на Huawei/AppTouch Store, то следует добавить следующие зависимости:
com.huawei.hms:ads-identifierсогласно документации.com.huawei.hms:opendeviceсогласно документации.
dependencies {
implementation 'com.huawei.hms:ads-identifier:3.4.62.300'
implementation 'com.huawei.hms:opendevice:6.11.0.300'
}
Шаг 2 - Вызовите метод инициализации🔗
Вызовите метод инициализации MRGServices.service в методе onCreate класса Application, либо в методе onCreate класса вашей главной Activity. В качестве аргументов необходимо передать Context, а также MRGS_APP_ID, CLIENT_SECRET.
import games.my.mrgs.MRGSPlatform;
import games.my.mrgs.MRGService;
import games.my.mrgs.MRGServiceParams;
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);
MRGService.service(context, serviceParams);
}
}
MRGS_APP_ID и CLIENT_SECRET
MRGS_APP_ID - ID приложения на сайте MRGS. CLIENT_SECRET - Клиентский ключ. Их можно получить на сайте MRGS в разделе настройки вашего приложения 
Шаг 3 (Опциональный) - Добавьте трекинг входа в игровой аккаунт🔗
Если ваше приложение использует идентификатор игрока (USER_ID), его необходимо передать в MRGS с помощью метода:
Шаг 4 - Добавьте трекинг платежей🔗
Биллинг MRGS
Трекинг платежей необходим в том случае, если вы не используете модуль MRGSBilling.
После валидации платежа необходимо сообщить данные о нем в MRGS.
Пример для Amazon
productJson - информация о товаре в формате JSON. Получить ее можно вызвав метод com.amazon.device.iap.model.Product#toJSON()
receiptJson - информация о покупке в формате JSON. Получить ее можно вызвав метод com.amazon.device.iap.model.Receipt#toJSON()
userDataJson - информация о покупателе в формате JSON. Получить ее можно вызвав метод com.amazon.device.iap.model.UserData#toJSON()
Пример для Android
skuDetails - информация о товаре в формате JSON. Получить ее можно вызвав метод getSkuDetails
purchaseData - это INAPP_PURCHASE_DATA поле полученное из ответа Google после покупки getBuyIntent
dataSignature - это INAPP_DATA_SIGNATURE поле полученное из ответа Google после покупки getBuyIntent
Пример для Huawei/AppTouch
inAppPurchaseDataJson - информация о покупке в формате JSON. Получить ее можно вызвав метод com.huawei.hms.iap.entity.PurchaseResultInfo#getInAppPurchaseData()
inAppSignature - зашифрованная платежная информация. Получить ее можно вызвав метод com.huawei.hms.iap.entity.PurchaseResultInfo#getInAppDataSignature()
Пример для Samsung
productVoJson - информация о товаре в формате JSON. Получить ее можно вызвав метод com.samsung.android.sdk.iap.lib.vo.ProductVo#getJsonString()
purchaseVoJson - информация о покупке в формате JSON. Получить ее можно вызвав метод com.samsung.android.sdk.iap.lib.vo.PurchaseVo#getJsonString()
Пример для сторонних платежных систем
Начиная с версии MRGS 6.1.0, появилась возможность отправлять информацию по платежам для любых сторонних платежных систем в MRGS. К таким платежам не будет применяться валидация платежей, и такие платежи будут записываться в базу данных как есть:
String transactionId = "1234-5678-000-ABCD";
String productId = "com.your.product.custom1";
float price = 10f;
String priceCurrency = "USD";
MRGSRevenue product = MRGSRevenue.newBuilder(transactionId, productId, price, priceCurrency)
.setTitle("Custom Product")
.setDescription("Custom product need for test")
.build();
MRGSPurchaseEvent customPurchaseEvent = MRGSPurchaseEvent.custom(product);
MRGSMetrics.addPurchase(customPurchaseEvent);
Проверка интеграции🔗
После завершения интеграции MRGS, мы рекомендуем убедиться в том, что библиотека работает корректно. О том как провести данную процедуру, читайте в разделе Проверки интеграции и поиск неисправностей
Дата создания: 2020-01-20