Facebookピクセルは、Facebookが提供するWeb専用分析ツールです。Facebook SDKのv4.34では、アプリ内のweb viewでピクセルイベントを記録できます。FacebookピクセルイベントをFacebook Appイベントに変換することもできます。これを行うには、Hybrid Mobile App Eventsを使用します。
また、Facebook SDKを実装しなくても、Adjust SDKでFacebookピクセルを利用できるようになりました。
サンプルアプリ
Facebookとの連携
FacebookアプリID
Facebookピクセルの使用を開始するには、次の手順を実行します。
FacebookのiOS SDKガイドの説明のとおり、次の手順を実行してFacebookアプリIDをアプリに追加する必要があります。
- Xcodeで、プロジェクトの
Info.plistファイルを右クリックして、 Open As -> Source Code を選択します。 - 以下のXMLスニペットをファイルbodyの最後の
</dict>要素の直前に挿入します。
<dict> <key>FacebookAppID</key> <string>{your-app-id}</string></dict>{your-app-id}を対象アプリのアプリIDに置き換えます。これはFacebook App Dashboardで確認できます。
Facebookピクセルの設定
Facebook Pixelの統合方法については、Facebookのガイドに従ってください。Javascriptコードは以下のように記述してください。
<!-- Facebook Pixel Code --><script> !function(f,b,e,v,n,t,s) fbq('init', <YOUR_PIXEL_ID>); fbq('track', 'PageView');</script><!-- End Facebook Pixel Code -->次に、Facebookピクセルコードを更新します。手順はHybrid Mobile App Eventsガイドの Update Your Pixel に記載されています。
fbq('init', <your_pixel_id>);fbq('set', 'mobileBridge', <your_pixel_id>, <your_fb_app_id>);Adjust SDKの実装
Web viewを拡張する
iOS web viewアプリの連携ガイドに従ってください。Web View bridgeをロードする際に、 augmentHybridWebViewメソッドへの呼び出しを追加します。
- (void)viewWillAppear:(BOOL)animated {
WKWebView *wkWebView = [[WKWebView alloc] initWithFrame:self.view.frame]; /// add @property (nonatomic, strong) AdjustBridge *adjustBridge; on your interface self.adjustBridge = [[AdjustBridge alloc] init]; [self.adjustBridge augmentHybridWebView]; [self.adjustBridge loadWKWebViewBridge:wkWebView];
}イベント名の登録
Adjust web bridge SDKは、Facebook PixelイベントをAdjustイベントに変換します。
この機能を使用するには、Facebookピクセルを特定のAdjustイベントにマッピングする必要があります。デフォルトのAdjustイベントトークンを設定することもできます。デフォルトトークンを使用するには、Adjust SDKを開始してピクセルイベントを記録する前にトークンを追加する必要があります。これには、Facebookピクセル設定からコピーペーストされたfbq('track', 'PageView');イベントが含まれます。
イベントをマッピングするには、configインスタンスでaddFbPixelMappingメソッドを呼び出します。 Facebookイベント名とAdjustイベントトークンをパラメーターとして使用してください。Adjust SDKを初期化する前にこれを呼び出す必要があります。
adjustConfig.addFbPixelMapping("fb_mobile_search", adjustEventTokenForSearch);adjustConfig.addFbPixelMapping( "fb_mobile_purchase", adjustEventTokenForPurchase,);| ピクセルイベント名 | Facebookアプリのイベント名 |
|---|---|
| ViewContent | fb_mobile_content_view |
| 検索ネットワーク キャンペーン | fb_mobile_search |
| AddtoCart | fb_mobile_add_to_cart |
| AddToWishlist | fb_mobile_add_to_wishlistt |
| InitiateCheckout | fb_mobile_initiated_checkout |
| AddPaymentInfo | fb_mobile_add_payment_info |
| Purchase | fb_mobile_purchase |
| CompleteRegistration | fb_mobile_complete_registration |
Adjust SDKでは、特定のイベントについてデフォルトのイベントトークンが見つからない場合は、警告をログに記録します。
There is not a default event token configured or a mapping found for event named: 'fb_mobile_search'. It won't be measured as an adjust event.マッピングを設定していない場合は、デフォルトのAdjustイベントを設定することも可能です。これを行うには、Adjust SDKを初期化する前にadjustConfig.setFbPixelDefaultEventToken(defaultEventToken);を呼び出します。