이 가이드에서는 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 );
두 번째 예시에서는 사용자가 게임에서 사용한 크레딧 금액을 추적합니다. 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 수집을 선택하거나 선택을 해제합니다.
Fb.Mobile
의 SetAdvertiserIDCollectionEnabled ()
메서드를 false
로 설정하면 광고주 ID 수집을 프로그래밍 방식으로 비활성화할 수 있습니다.
FB.Mobile.SetAdvertiserIDCollectionEnabled (false);
최종 사용자에게 동의를 받은 후 광고주 ID 수집을 다시 활성화하고 싶은 경우가 있습니다. 이 경우에는 SetAdvertiserIDCollectionEnabled()
메서드를 true
로 설정할 수 있습니다.
FB.Mobile.SetAdvertiserIDCollectionEnabled (true);