このガイドでは、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は購入したアイテムの価格のfloat、packageNameは購入したアイテムのSKU codeの文字列です。
var iapParameters = new Dictionary<string, object>(); iapParameters["mygame_packagename"] = packageName; FB.LogPurchase( priceAmount, priceCurrency, iapParameters );
2番目の例では、ユーザーがゲームで消費したクレジットの数値をトラッキングしています。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を統合すると、特定のアプリイベントは、アプリイベントの自動記録を無効にしない限り、イベントマネージャのために自動的に記録、収集されます。これは、アプリコードで変更できます。また、アプリダッシュボードかイベントマネージャの[アプリイベント]の下のトグルで切り替えることもできます。AutoLogAppEventsEnabledのフラグとトグルとの間で値が競合している場合、「Facebook SDKの自動イベント記録」のトグル値が優先されることに注意してください。収集される情報やアプリイベントの自動記録を無効にする方法については、アプリイベントの自動記録をご覧ください。
Unity SDKでは、デフォルトでイベントの自動記録がオンになっています。自動イベント記録のオンオフを切り替えるには、Unity IDEメニューバーの[Facebook] -> [設定の編集]にアクセスして、[アプリイベント設定]セクションにある[アプリイベントの自動記録]を選択または選択解除してください。
プログラムを使用してイベントの自動記録をオフにするには、Fb.MobileのSetAutoLogAppEventsEnabled()メソッドをfalseに設定します。
FB.Mobile.SetAutoLogAppEventsEnabled(false);
場合によっては、エンドユーザーが同意した後、自動記録を再度オンにしたいと思うかもしれません。これを行うには、SetAutoLogAppEventsEnabled()をtrueに設定します。
FB.Mobile.SetAutoLogAppEventsEnabled(true);
Unity SDKでは、デフォルトで広告主IDの収集をオンにしています。広告主ID収集のオンオフを切り替えるには、Unity IDEメニューバーの[Facebook] -> [設定の編集]にアクセスして、[アプリイベント設定]セクションにある[広告主IDの収集]を選択または選択解除してください。
プログラムを使用して広告主ID収集をオフにするには、Fb.MobileのSetAdvertiserIDCollectionEnabled ()メソッドをfalseに設定します。
FB.Mobile.SetAdvertiserIDCollectionEnabled (false);
場合によっては、エンドユーザーが同意した後、広告主ID収集を再度オンにしたいと思うかもしれません。これを行うには、SetAdvertiserIDCollectionEnabled()をtrueに設定します。
FB.Mobile.SetAdvertiserIDCollectionEnabled (true);