로딩중입니다
애드브릭스 페이스북 광고 설정 : 안드로이드, 유니티
2/29/2016 2:23:11 PM

애드브릭스 페이스북 광고 설정 : 안드로이드, 유니티


애드브릭스를 이용하여 페이스북 모바일 앱 인스톨(MAIA), 모바일 앱 참여(MAEA) 광고를 설정하기 위한 가이드입니다.


*주의사항

    - 이 기능을 사용하기 위해서는 반드시 IGAW공통연동이 먼저 진행되어야 합니다.
      [IGAW공통연동 : 안드로이드] [IGAW공통연동 : 유니티 안드로이드]

    - 이 기능을 사용하기 위한 최소 SDK버전은 아래와 같습니다.
       a. 모바일 앱 인스톨 광고(MAIA) : IgawCommon ver 4.2.0 이상
       b. 모바일 앱 참여 광고 (MAEA) : 
IgawCommon ver 4.2.1 이상


코드연동

1. 딥링킹 세팅

페이스북 광고 트을 위해서는 앱 내의 딥링킹 설정이 필요합니다. [How to set Deeplink?]

앱 내 특정 위치로 랜딩될 수 있는 path값(커스텀 쿼리 값)이 세팅되어 있어야 합니다.

 * 광고에서 사용할 애드브릭스 트래킹링크 생성 시에 딥링크 스키마와 랜딩 페이지의 path 값이 필요합니다.



2. 딥링크 정보 전달하기 

딥링크가 설정된 페이스북 광고를 통해 앱이 오픈되면, 딥링크 path 정보가 전달됩니다. 전달받은 딥링크 path 정보를 SDK에 전달합니다.


#Case1. FaceBook SDK를 연동하지 않았을 때

페이스북 SDK를 연동하지 않고, IGAWorks의 SDK만 사용할 때에는 다음의 가이드를 따릅니다.

  • 안드로이드
//페이스북 설정을 위한 API 추가
IgawCommon.setDeferredLinkListener(this, new DeferredLinkListener() {
    @Override
    public void onReceiveDeeplink(String s) {
        try {
            Log.i("IGAWORKS", "Facebook Deeplink: " + s);
            Intent i = new Intent(Intent.ACTION_VIEW);
            i.addCategory(Intent.CATEGORY_BROWSABLE);
            i.setData(Uri.parse(s));
            MainActivity.this.startActivity(i);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
});


  • 유니티
IgaworksUnityPluginAOS.Common.setDeferredLinkListener();
IgaworksUnityPluginAOS.OnReceiveDeferredLink = mOnReceiveDeferredLink;

 void mOnReceiveDeferredLink(string deeplink)
    {
        Debug.Log(string.Format("mOnReceiveDeferredLink deeplink: {0}", deeplink));
    }



#Case2. FaceBook SDK를 연동하는 경우

Facebook SDK의 FetchDeferredAppLinkData API의 사용 여부에 따라 아래 2가지 케이스가 있으니, 각 케이스에 해당하는 가이드를 따릅니다.

* 아래 가이드를 적용하기 위해서는 Common_v4.2.7 , Adbrix_v4.2.2  이상을 적용하여야 합니다. [다운로드 센터 바로가기]


case2-1. FaceBook SDK의 FetchDeferredAppLinkData API를 사용할 경우

페이스북SDK의 FetchDeferredAppLinkData API를 사용할 때에는 다음의 가이드를 따릅니다.

  • 안드로이드 ( setReferralUrl API)
AppLinkData.fetchDeferredAppLinkData(MainActivity.this, new AppLinkData.CompletionHandler() {
    public void onDeferredAppLinkDataFetched(AppLinkData appLinkData) {
        if (appLinkData != null) {
            try {
                Bundle bundle = appLinkData.getArgumentBundle();
                // Get deeplink from ApplinkData
                String deeplink = bundle.getString(AppLinkData.ARGUMENTS_NATIVE_URL);
                // Report deeplink for IgawCommon to get tracking parameters
                // IgawCommon.setReferralUrl(MainActivity.this, deeplink);
                // 4.2.5 버전부터 setReferralUrl 이 setReferralUrlForFacebook 으로 변경됩니다.
                   IgawCommon.setReferralUrlForFacebook(MainActivity.this, deeplink);
                // Deeplinking
                Intent i = new Intent(Intent.ACTION_VIEW);
                i.addCategory(Intent.CATEGORY_BROWSABLE);
                i.setData(Uri.parse(deeplink));
                MainActivity.this.startActivity(i);
            } catch (Exception e) {
                e.printStackTrace();
            }
        } 
    }
});


  • 유니티 ( setReferralUrl API)
FB.Mobile.FetchDeferredAppLinkData(DeepLinkCallback);  
void DeepLinkCallback(IResult result)
{
    Debug.Log("DeepLinkCallback call ");
    if (result != null && !string.IsNullOrEmpty(result.RawResult))
    {
        try
        {
            Dictionary<string, object> jsonObjects = MiniJson.Deserialize(result.RawResult) as Dictionary<string, object>;
            string extras = (string)jsonObjects["extras"];
            Dictionary<string, object> extrasJSON = MiniJson.Deserialize(extras) as Dictionary<string, object>;
            string nativeURL = (string)extrasJSON["com.facebook.platform.APPLINK_NATIVE_URL"];                   
            // Report deeplink for IgawCommon to get tracking parameters
            // IgaworksUnityPluginAOS.Common.setReferralUrl(nativeURL);
            // setReferralUrl 이 setReferralUrlForFacebook 으로 변경됩니다.
            IgaworksUnityPluginAOS.Common.setReferralUrlForFacebook(nativeURL);
} catch (Exception e) { Debug.Log("Error: " + e.Message); } } }


case2-2. FaceBook SDK의 FetchDeferredAppLinkData API를 사용하지 않는 경우

페이스북SDK의 FetchDeferredAppLinkData API를 사용하지 않을 때에는 #Case1의 가이드를 따릅니다.




페이스북 광고 세팅 및 테스트

페이스북 광고를 위한 애드브릭스 트래킹링크 생성 방법 및 페이스북 광고 세팅, 테스트 방법은 이용방법 안내 아티클에서 자세히 안내하고 있습니다.

다음 아티클을 참고해주세요.

[페이스북 광고 설정 방법]