本文档介绍如何在您的 Android 应用中使用 Meta 安装引荐来源来获取以应用安装量为目标的 Facebook、Instagram 和 Audience Network 广告系列的元数据。Google Play Install Referrer (GPIR) 仅提供同一会话点击安装量的信息,而 Meta 安装引荐来源则包含以下数据:
如要为您的 Android 应用广告系列设置 Meta 安装引荐来源,您可以采用两个选项:直接集成或通过移动应用成效衡量合作伙伴 (MMP) 的支持集成。
开始之前,您需要:
在您的 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 去重流程。
您可以使用 install_referrer
中返回的数据来删除重复数据,因为在 Meta 安装引荐来源提供的 CT 中,一次安装或一个广告系列的这些值与 GPIR 提供的相应值是相同的。
对于 VT 和跨会话 CT,由于不受 GPIR 支持,应使用 Meta 安装引荐数据。
如果未获取 GPIR 广告系列的元数据,您需要根据您是否与移动应用成效衡量合作伙伴 (MMP) 合作来去重数据。
对于因归因于 Meta 安装或自然安装而导致归因广告网络未成功的安装,移动应用成效衡量合作伙伴 (MMP) 有权访问这些安装的行级归因数据。您可以检查是否有通过 Meta 安装引荐来源提供的安装引荐来源。如有,您可以认为是 Meta 促成了某次安装,并且提供的安装推荐来源数据是此次安装的广告系列元数据。
Meta 安装引荐来源提供某次安装的最后触点信息,包括广告系列元数据、最后触点的实际时间戳和最后触点的操作类型(展示或点击)。您可以使用您从其他广告网络获取的归因数据,比较最后触点的操作类型和最后触点的时间戳,然后确定归因到哪个广告网络。
首先,确保您使用的是支持此解决方案的应用版本。最低版本分别是:
按照以下步骤操作,可验证您的设置:
将 MMP SDK 更新为集成了 Meta 安装引荐来源的版本:
请通过下方链接查看说明。
请通过下方链接查看说明。
注意:如果您已为 Google Play 商店安装引荐来源完成此操作,则无须执行此步骤。