Из этого руководства вы узнаете, как добавить функционал событий в приложении в новое или уже используемое приложение путем интеграции Facebook SDK для Unity.
SDK предлагает вспомогательный инструментFB.ActivateApp
для регистрации активаций приложения. Сначала инициализируйте SDK, используя метод FB.Init
. После этого вы сможете вызвать метод FB.ActivateApp
.
Используйте функцию Awake из класса MonoBehavior, чтобы регистрировать запуски вашего приложения.
void Awake () { if (FB.IsInitialized) { FB.ActivateApp(); } else { //Handle FB.Init FB.Init( () => { FB.ActivateApp(); }); } }
Используйте функцию OnApplicationPause из класса MonoBehavior, чтобы регистрировать возобновление работы приложения.
// Unity will call OnApplicationPause(false) when an app is resumed // from the background void OnApplicationPause (bool pauseStatus) { // Check the pauseStatus to see if we are in the foreground // or background if (!pauseStatus) { //app resume if (FB.IsInitialized) { FB.ActivateApp(); } else { //Handle FB.Init FB.Init( () => { FB.ActivateApp(); }); } } }
Приведенные ниже примеры кода демонстрируют, как зарегистрировать события вручную.
В этом примере priceCurrency
— строка с трехбуквенным кодом ISO (ISO code
), обозначающим валюту покупателя, priceAmount
— число с плавающей запятой (float
), обозначающее потраченную сумму, а packageName
— строка с кодом SKU code
купленного товара.
var iapParameters = new Dictionary<string, object>(); iapParameters["mygame_packagename"] = packageName; FB.LogPurchase( priceAmount, priceCurrency, iapParameters );
Во втором примере мы отслеживаем количество кредитов, потраченных пользователем в игре. numGold
— это число с плавающей запятой (float
), указывающее количество потраченных кредитов, а storeItem
— строка с названием приобретенного товара.
var softPurchaseParameters = new Dictionary<string, object>(); softPurchaseParameters["mygame_purchased_item"] = storeItem; FB.LogAppEvent( Facebook.Unity.AppEventName.SpentCredits, (float)numGold, softPurchaseParameters );
После интеграции Facebook SDK определенные события в приложении будут автоматически регистрироваться и собираться для Events Manager, если только вы не отключите эту функцию. Это можно изменить в коде вашего приложения или с помощью переключателя в разделе "События в приложении" на панели приложений или в Events Manager. Обратите внимание: при конфликте значений флага AutoLogAppEventsEnabled
и переключателя будет учитываться значение в переключателе "Автоматическая регистрация событий для Facebook SDK". Подробнее о том, какая информация собирается и как отключить автоматическую регистрацию событий в приложении, см. в разделе Автоматическая регистрация событий в приложении.
По умолчанию в нашем SDK для Unity автоматическая регистрация событий включена. Чтобы отключить или включить автоматическую регистрацию событий, откройте меню среды разработки Unity и выберите Facebook > Изменить настройки. Затем выберите параметр Автоматическая регистрация событий в приложении или отмените его выбор в разделе Настройки событий в приложении.
Автоматическую регистрацию событий также можно отключить программным путем — для этого установите для метода SetAutoLogAppEventsEnabled()
в классе Fb.Mobile
значение false
.
FB.Mobile.SetAutoLogAppEventsEnabled(false);
В некоторых случаях вам может понадобиться вновь включить автоматическую регистрацию, предварительно получив согласие конечного пользователя. Для этого установите для метода SetAutoLogAppEventsEnabled()
значение true
.
FB.Mobile.SetAutoLogAppEventsEnabled(true);
Наш SDK для Unity по умолчанию автоматически собирает ID рекламодателей. Чтобы отключить или включить автоматический сбор ID рекламодателей, откройте меню среды разработки Unity и выберите Facebook > Изменить настройки. Затем выберите параметр Сбор ID рекламодателей или отмените его выбор в разделе Настройки события в приложении.
Автоматический сбор ID также можно отключить программным путем — для этого установите для метода SetAdvertiserIDCollectionEnabled ()
в классе Fb.Mobile
значение false
.
FB.Mobile.SetAdvertiserIDCollectionEnabled (false);
В некоторых случаях вам может понадобиться вновь включить автоматический сбор ID рекламодателей, предварительно получив согласие конечного пользователя. Для этого установите для метода SetAdvertiserIDCollectionEnabled()
значение true
.
FB.Mobile.SetAdvertiserIDCollectionEnabled (true);