新手指南 - Unity

本指南說明如何使用 Facebook Unity SDK 將應用程式事件加入全新或既有的應用程式。

準備工作

記錄應用程式啟動

SDK 提供可記錄應用程式啟動的 FB.ActivateApp 協助工具方法。您必須先使用 FB.Init 初始化 SDK,才能呼叫 FB.ActivateApp

使用 MonoBehavior 的 Awake 函式可記錄用戶何時啟動您的應用程式。

void Awake ()
{
  if (FB.IsInitialized) {
    FB.ActivateApp();
  } else {
    //Handle FB.Init
    FB.Init( () => {
      FB.ActivateApp();
    });
  }
}

使用 MonoBehavior 的 OnApplicationPause 函式可記錄用戶何時恢復您的應用程式。

// 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 是包含由 3 個英文字母組成的 ISO code 字串(代表所用的幣別),priceAmount 是包含所購商品價格的 floatpackageName 是包含所購商品 SKU code 的字串。

var iapParameters = new Dictionary<string, object>();
iapParameters["mygame_packagename"] = packageName;
FB.LogPurchase(
  priceAmount,
  priceCurrency,
  iapParameters
);

追蹤遊戲內的事件

在第二個範例中,我們追蹤用戶支出的遊戲幣數。numGold 是包含支出遊戲幣數的 floatstoreItem 是包含用戶所購商品名稱的字串。

var softPurchaseParameters = new Dictionary<string, object>();
softPurchaseParameters["mygame_purchased_item"] = storeItem;
FB.LogAppEvent(
  Facebook.Unity.AppEventName.SpentCredits,
  (float)numGold,
  softPurchaseParameters
);

停用自動記錄的事件

整合 Facebook SDK 後,除非停用自動應用程式事件記錄功能,否則系統會自動記錄並蒐集某些應用程式事件,以供事件管理工具使用。您可以在應用程式的程式碼中進行變更,也可以透過應用程式主控板或事件管理工具中的應用程式事件下的切換來進行變更。請注意,如果 AutoLogAppEventsEnabled 標記和切換之間的值發生衝突,我們將遵循「Facebook SDK 的自動事件記錄功能」切換中的值。如需深入瞭解系統會蒐集哪些資訊,以及如何停用自動應用程式事件記錄功能,請參閱自動應用程式事件記錄功能

Unity SDK 預設會啟用自動記錄的事件。若要停用或啟用自動事件記錄,請前往 Unity IDE 功能表列中的 Facebook -> 編輯設定,然後在「應用程式事件設定」區塊內選擇或取消選取自動記錄應用程式事件

透過將 Fb.MobileSetAutoLogAppEventsEnabled() 方法設為 false,您能夠以程式設計的方式停用自動記錄的事件。

FB.Mobile.SetAutoLogAppEventsEnabled(false); 

在某些情況下,您可能希望等到一般用戶同意後再重新啟用自動記錄。若是如此,只需將 SetAutoLogAppEventsEnabled() 方法設為 true 即可。

FB.Mobile.SetAutoLogAppEventsEnabled(true); 

停用蒐集廣告主編號

Unity SDK 預設會啟用蒐集廣告主編號。若要停用或啟用廣告主編號蒐集,請前往 Unity IDE 功能表列中的 Facebook -> 編輯設定,然後在「應用程式事件設定」區塊內選擇或取消選取廣告主編號蒐集

透過將 Fb.MobileSetAdvertiserIDCollectionEnabled () 方法設為 false,您能夠以程式設計的方式停用廣告主編號蒐集。

FB.Mobile.SetAdvertiserIDCollectionEnabled (false);

在某些情況下,您可能希望等到一般用戶同意後再重新啟用廣告主編號蒐集。若是如此,只需將 SetAdvertiserIDCollectionEnabled() 方法設為 true 即可。

FB.Mobile.SetAdvertiserIDCollectionEnabled (true);