Интеграция послеустановочной аналитики для Unity

Последнее обновление:
Предварительные требования

Прежде чем начать, необходимо:

Если вы настраиваете ПУА и ваша игра, собранная под Unity, предназначена для Amazon Appstore или Google Play Store, то вам также понадобится добавить свой ключ «Секрет разработчика» Amazon или открытый ключ своего приложения в соответствующее поле на странице «Настройки приложения» для данной игры:

Amazon Appstore

Google Play Store

(Ключ «Секрет разработчика» можно найти здесь. Для того чтобы узнать свой открытый ключ Google Play, зарегистрируйтесь в Developer Console Google Play, перейдите на страницу Application Details, нажмите ссылку Services and APIs и найдите раздел Licensing and In-App Billing. Там вы увидите свой открытый ключ для выписки счетов внутри приложения).

Интеграция ПУА для Unity

Есть несколько способов управления потоком IAP (покупок внутри приложения) в играх, собранных под Unity; ниже перечислены пошаговые указания к передаче информации о IAP в Chartboost после события успешной покупки:

Unity iOS

1) Чтобы иметь возможность вызывать метод Chartboost, отслеживающий IAP, нужно сначала включить этот класс с использованием ChartboostSDK (если это еще не сделано)

2) Отправьте информацию о IAP в Chartboost SDK:

Chartboost.trackInAppAppleStorePurchaseEvent(receipt, productTitle, productDescription, productPrice, productCurrency, productIdentifier);

Unity Google Play

1) Чтобы иметь возможность вызывать метод Chartboost, отслеживающий IAP, нужно сначала включить этот класс с использованием ChartboostSDK (если это еще не сделано)

2) Отправьте информацию о IAP в Chartboost SDK:

Chartboost.trackInAppGooglePlayPurchaseEvent(title,description,price,currency,productID,purchaseData,purchaseSignature);

Unity Amazon

1) Чтобы иметь возможность вызывать метод Chartboost, отслеживающий IAP, нужно сначала включить этот класс с использованием ChartboostSDK (если это еще не сделано)

2) Отправьте информацию о IAP в Chartboost SDK:

Chartboost.trackInAppAmazonStorePurchaseEvent(title,description,price,currency,productID,userID,purchaseToken);

Определения параметров можно найти в файле Chartboost.cs из образца проекта (Assets/Chartboost/Scripts/):

namespace ChartboostSDK {

#if UNITY_ANDROID
/// <summary>
/// Отслеживает событие покупки внутри приложения для Google Play Store.
/// Отслеживает покупки внутри приложения для последующей сегментации и таргетинга пользователей.
/// </summary>
/// <param name="title">Локализованное название продукта.</param>
/// <param name="description">Локализованное описание продукта.</param>
/// <param name="price">Цена продукта.</param>
/// <param name="currency">Локализованная валюта продукта.</param>
/// <param name="productId">Идентификатор продукта в Google Play.</param>
/// <param name="purchaseData">Строка данных покупки для транзакции.</param>
/// <param name="purchaseSignature">Подпись покупки для транзакции.</param>
 public static void trackInAppGooglePlayPurchaseEvent(string title, string description, string price, string currency, string productID, string purchaseData, string purchaseSignature) {
 CBExternal.trackInAppGooglePlayPurchaseEvent(title,description,price,currency,productID,purchaseData,purchaseSignature);
 }

/// <summary>
/// Отслеживает событие покупки внутри приложения для Amazon Store.
/// Отслеживает покупки внутри приложения для последующей сегментации и таргетинга пользователей.
/// </summary>
/// <param name="title">Локализованное название продукта.</param>
/// <param name="description">Локализованное описание продукта.</param>
/// <param name="price">Цена продукта.</param>
/// <param name="currency">Локализованная валюта продукта.</param>
/// <param name="productID">Идентификатор продукта в Amazon.</param>
/// <param name="userID">Пользовательский идентификатор продукта.</param>
/// <param name="purchaseToken">Токен покупки для транзакции.</param>
 public static void trackInAppAmazonStorePurchaseEvent(string title, string description, string price, string currency, string productID, string userID, string purchaseToken) {
 CBExternal.trackInAppAmazonStorePurchaseEvent(title,description,price,currency,productID,userID,purchaseToken);
 }

#elif UNITY_IPHONE
/// <summary>
/// Отслеживает событие покупки внутри приложения для iOS App Store.
/// Отслеживает покупки внутри приложения для последующей сегментации и таргетинга пользователей.
/// </summary>
/// <param name="receipt">Квитанция транзакции для подтверждения покупки.</param>
/// <param name="productTitle">Локализованное название продукта.</param>
/// <param name="productDescription">Локализованное описание продукта.</param>
/// <param name="productPrice">Цена продукта.</param>
/// <param name="productCurrency">Локализованная валюта продукта.</param>
/// <param name="productIdentifier">Идентификатор продукта для iOS.</param>
 public static void trackInAppAppleStorePurchaseEvent(string receipt, string productTitle, string productDescription, string productPrice, string productCurrency, string productIdentifier) {
 CBExternal.trackInAppAppleStorePurchaseEvent(receipt, productTitle, productDescription, productPrice, productCurrency, productIdentifier);
 }
#endif

}
Тестирование настроек ПУА (игры для iOS со сборкой в Unity)

По завершении интеграции ПУА можно включить режим «песочницы» для теста своей работы – и это лучше сделать до передачи своей игры на одобрение в App Store.

Для этого нужно включить флаг тестового режима в Chartboost SDK с помощью переменной среды в Xcode. Вот как это сделать:

1. Откройте раздел схемы в верхнем левом углу Xcode и выберите в раскрывающемся меню пункт Edit Scheme:

2. Нажмите Run в меню слева и перейдите на вкладку Arguments:

3. Нажмите значок + в разделе Environment Variables и введите значение CB_TEST_MODE в появившееся поле Name:

4. Дважды щелкните под заголовком Value и введите в открывшееся поле значение on:

После этого нажмите OK, запустите свой проект и сделайте покупку в режиме разработки – и тогда, если вы уже интегрировали ПУА в другую игру, то спустя несколько минут приложение появится на панели пользователя ПУА (если это ваше первое приложение с ПУА, дождитесь доступа к панели пользователя ПУА; это может занять до одного дня).

Обратите внимание на то, что, поскольку включен режим «песочницы», вы не увидите на панели пользователя никаких данных ПУА.

Перед выпуском игры не забудьте убрать переменную среды CB_TEST_MODE!