Начало работы — Unity

Из этого руководства вы узнаете, как добавить функционал событий в приложении в новое или уже используемое приложение путем интеграции 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); 

Отключение сбора ID рекламодателей

Наш SDK для Unity по умолчанию автоматически собирает ID рекламодателей. Чтобы отключить или включить автоматический сбор ID рекламодателей, откройте меню среды разработки Unity и выберите Facebook > Изменить настройки. Затем выберите параметр Сбор ID рекламодателей или отмените его выбор в разделе Настройки события в приложении.

Автоматический сбор ID также можно отключить программным путем — для этого установите для метода SetAdvertiserIDCollectionEnabled () в классе Fb.Mobile значение false.

FB.Mobile.SetAdvertiserIDCollectionEnabled (false);

В некоторых случаях вам может понадобиться вновь включить автоматический сбор ID рекламодателей, предварительно получив согласие конечного пользователя. Для этого установите для метода SetAdvertiserIDCollectionEnabled() значение true.

FB.Mobile.SetAdvertiserIDCollectionEnabled (true);