Начало работы с бонусами🔗
Import
Содержится в модуле MRGService, для использования добавьте данный модуль в проект, а в нужном месте импортируйте заголовочный файл.
Интеграция бонусов в ваше приложении состоит всего в нескольких шагах:
Шаг 1. Установить делегат🔗
При старте SDK MRGS необходимо передать в метод инициализации объект, реализующий протокол MRGSServerDataDelegate. В этом же месте необходимо реализовать методы этого делегата:
public class MasterController : MonoBehaviour, IMRGSServerDataDelegate
{
void Awake()
{
// Set basic MRGS parameters
// ...
// Call the initialization method, pass the delegate as the last parameter
MRGService.Instance.Initialize(serviceParams, sdkParams, this);
}
public void OnServerDataLoaded(string jsonString)
{
// Handle the server response.
Debug.Log("Received server data: " + jsonString);
}
}
@interface YourAppDelegate (MRGS) <MRGSServerDataDelegate>
@end
@implementation YourAppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
// Set basic MRGS parameters
// ...
// Call the initialization method, passing the delegate as the third parameter
[MRGService startWithServiceParams:mrgsParams
externalSDKParams:@[myTrackerParams]
delegate:self];
}
#pragma mark - MRGSServerDataDelegate
- (void)loadServerDataDidFinished:(NSDictionary *)serverData {
// Handle the server response.
NSLog(@"%@ %@", NSStringFromSelector(_cmd), serverData);
}
public class YourApplicationClass extends Application implements MRGSServerDataDelegate
{
@Override
public void onCreate()
{
super.onCreate();
// Set basic MRGS parameters
//...
// Call the initialization method, pass the delegate as the last parameter
MRGService.service(context, settings, externalSdk, this);
}
@Override
public void loadServerDataDidFinished(MRGSMap serverData) {
// Handle the server response.
}
}
Шаг 2. Получить данные🔗
Для запроса последних данных с сервера воспользуйтесь методом:
Автоматический запрос
Кроме того, данные ServerData будут запрошены и загружены автоматически при Авторизации пользователя.
Словарь serverData имеет вид:
"Bonuses" : {
"2149879" : {
"code" : "money",
"id" : "2149879",
"object_id" : "1",
"cnt" : "200"
}
},
"Payments" : [
{
"id" : "13745540",
"atime" : "1531227425",
"userId" : "1234",
"transactionIdentifier" : "ru.akeb.framework.testConsumable",
"transactionId" : "1000000416060976"
}
],
"serverTime" : 1534328981,
"MinAppVersion" : "1.0.0"
}
Отсюда можно получить выданные бонусы, серверное время, и незавершенные платежи.
Шаг 3. Выдать бонус пользователю🔗
Если Вы выдаете бонусы на клиенте, то после выдачи необходимо уведомить об этом сервер MRGS, для этого воспользуйтесь методом:
В случае, если бонусы выдает Ваш сервер, то необходимо уведомить сервер MRGS о выдаче бонуса через server API
Дата создания: 2020-02-05