このドキュメントでは、AndroidアプリのMetaインストールリファラーを使用して、アプリのインストールを目的とするFacebook、Instagram、Audience Networkの広告キャンペーンのメタデータを取得する方法を説明します。Google Playインストールリファラー(GPIR)は同じセッションのクリックスルーインストールに関する情報のみを提供しますが、Metaのインストールリファラーには次のデータが含まれます。
AndroidアプリキャンペーンのためにMetaインストールリファラーを設定するオプションには、ダイレクト連携とモバイル測定パートナー(MMP)によるサポート連携の2つがあります。
始める前に、次のものが必要です。
AndroidManifest.xmlファイルにFacebookアプリ、Instagramアプリ、Facebook Liteアプリのqueries
要素を追加して、アプリでこれらのMetaアプリのリファーラルアトリビューションデータを取得できるようにします。
<queries> <package android:name="com.facebook.katana" /> </queries> <queries> <package android:name="com.instagram.android" /> </queries> <queries> <package android:name="com.facebook.lite" /> </queries>
ContentProviderコードを追加して、FacebookアプリとInstagramアプリからリファーラルアトリビューション分析データを取得します。アプリを最初にリリースする際にこのデータを取得することをおすすめします。
Cursor c = null; try { String [] projection = { "install_referrer", "is_ct", "actual_timestamp", }; Uri providerUri = null; // This IF statement queries the facebook app first. // To query from the instagram app first, change the sequence of the IF statement if (context.getPackageManager().resolveContentProvider( "com.facebook.katana.provider.InstallReferrerProvider", 0) != null) { providerUri = Uri.parse( "content://com.facebook.katana.provider.InstallReferrerProvider/" + FB_APP_ID); } else if (context.getPackageManager().resolveContentProvider( "com.instagram.contentprovider.InstallReferrerProvider", 0) != null) { providerUri = Uri.parse( "content://com.instagram.contentprovider.InstallReferrerProvider/" + FB_APP_ID); } else if (context.getPackageManager().resolveContentProvider( "com.facebook.lite.provider.InstallReferrerProvider", 0) != null) { providerUri = Uri.parse("content://com.facebook.lite.provider.InstallReferrerProvider/" + FB_APP_ID); } else { return null; } c = context.getContentResolver().query(providerUri, projection, null, null, null); if (c == null || !c.moveToFirst()) { return null; } int installReferrerIndex = c.getColumnIndex("install_referrer"); int timestampIndex = c.getColumnIndex("actual_timestamp"); int isCTIndex = c.getColumnIndex("is_ct"); String installReferrer = c.getString(installReferrerIndex); // serialized and encrypted attribution details // TODO: // 1. deserialize installReferrer (convert String to JSON) // 2. decrypt attribution details in install_referrer.utm_content.source.data using // key: GPIR decryption key // nonce: retrieve from installReferrer.utm_content.source.nonce // data: retrieve from installReferrer.utm_content.source.data // decrypt data long actualTimestamp = c.getLong(timestampIndex); // timestamp in seconds for click/impression int isCT = c.getInt(isCTIndex); // VT or CT, 0 = VT, 1 = CT } catch (Exception e) { return null; } finally { if (c != null) { c.close(); } }
データのシリアル化と暗号化を解除するステップは、インストールリファラーガイドにあるステップと似ています。
各Metaアプリのシリアル化解除後にinstall_referrer
から受信するデータ構造応答には、次のものが含まれています。
actual_timestamp
- 値は、クリックまたはインプレッションが発生したときのタイムスタンプ(秒)ですis_ct
- 値は、クリックスルーを表す1
、またはインプレッションを表す0
ですinstall_referrer
- 値は、暗号化されたGPIRアトリビューション分析データです{ is_ct=1, actual_timestamp=123, install_referrer={ utm_campaign = fb4a, utm_content: { source: { data: “7fb9bd76…”, // encrypted attribution information nonce: “1234” // nonce from encryption }, a: <app_id>, t: <timestamp> } utm_source : “apps.facebook.com” //OR “apps.instagram.com” } }
install_referrer.utm_content.source
の暗号化解除後のデータの例{ "ad_id":"6110809314024", "adgroup_id":"6110808725024", "adgroup_name":"RTG_Storie_", "campaign_id":"6110808710224", "campaign_name":"Mobex_Conversiones_Storie_Android_21 a 31 de Diciembre_OP39895", "campaign_group_id":"6110808710624", "campaign_group_name":"Mobex_Instagram Storie_ Conversiones_ Diciembre OP 43918", "account_id":"485495091598353", "ad_objective_name":"CONVERSIONS", // data included for Instagram ads "is_instagram":true, "publisher_platform":"instagram", "platform_position":"instagram_stories" }
GPIR広告キャンペーンのメタデータを利用できる場合は、既存のGPIR重複除外フローに従ってください。
MetaインストールリファラーとGPIRにおけるCTインストールまたはキャンペーンの値は同一なので、install_referrer
に返されたデータを使用して重複データを削除することができます。
VTとクロスセッションCTの場合、Metaのインストールリファラーデータを使用してください(GPIRではサポートされていません)。
GPIR広告キャンペーンのメタデータがない場合、モバイル測定パートナー(MMP)と連携しているかどうかに応じて、データの重複を除外してください。
モバイル測定パートナー(MMP)は、効果的な広告ネットワークのないインストール(Metaまたはオーガニックインストール由来)に関して、行レベルのアトリビューションデータにアクセスします。Metaのインストールリファラーで、インストールリファラーが提供されているかどうかを確認できます。提供されている場合、Metaに由来するインストールだと判断でき、提供されるインストールリファラーデータはインストールの広告キャンペーンのメタデータです。
Metaのインストールリファラーは、広告キャンペーンのメタデータ、ラストタッチの実際のタイムスタンプ、ラストタッチのアクションタイプ(インプレッションまたはクリック)など、インストールに関するラストタッチ情報を提供します。ラストタッチのアクションタイプとラストタッチのタイムスタンプを、他の広告ネットワークから取得したアトリビューション分析データと比較して、効果的な広告ネットワークを判別することができます。
まず最初に、このソリューションに対応するアプリのバージョンを使用していることを確認してください。最小バージョンは以下のとおりです。
次のステップで設定を確認することができます。
MMP SDKを、Metaインストールリファラーと連携しているバージョンにアップデートしてください。
以下のリンクから手順を確認してください。
以下のリンクから手順を確認してください。
注: Google Playストアインストールリファラーですでに行っている場合は、このステップは必要ありません。