Firebase SDK 中的 Google Ads 归因

Posted

技术标签:

【中文标题】Firebase SDK 中的 Google Ads 归因【英文标题】:Google Ads attribution in Firebase SDK 【发布时间】:2019-11-07 06:29:51 【问题描述】:

我们最近在 android 应用中从 Google Analytics SDK 切换到 Firebase SDK

在此之前,我们使用INSTALL_REFERRER 来获取用户的来源和媒介。 现在我们已经在 Google Ads 上启动了应用广告系列,INSTALL_REFERRER 不再有效,但转化仍在继续。

我们如何使用 Firebase SDK 知道用户来自 Google Ads 广告系列?

【问题讨论】:

【参考方案1】:

我想你会想要使用Play Install Referrer API。

上面的链接警告说,安装引荐来源信息将在 90 天内可用,并且仅在应用首次运行期间调用 API 以避免不必要的 API 调用。

这是一个示例(取自上面的链接),假设您已将库添加到您的 build.gradle 文件中:

初始化:

private lateinit var referrerClient: InstallReferrerClient
...

referrerClient = InstallReferrerClient.newBuilder(this).build()
referrerClient.startConnection(object : InstallReferrerStateListener 

    override fun onInstallReferrerSetupFinished(responseCode: Int) 
        when (responseCode) 
            InstallReferrerResponse.OK -> 
                // Connection established
            
            InstallReferrerResponse.FEATURE_NOT_SUPPORTED -> 
                // API not available on the current Play Store app
            
            InstallReferrerResponse.SERVICE_UNAVAILABLE -> 
                // Connection could not be established
            
        
    

    override fun onInstallReferrerServiceDisconnected() 
        // Try to restart the connection on the next request to
        // Google Play by calling the startConnection() method.
    
)

获取推荐人:

val response: ReferrerDetails = referrerClient.installReferrer
val referrer = response.installReferrer
val clickTimestamp = response.referrerClickTimestampSeconds
val installTimestamp = response.installBeginTimestampSeconds

总结:

referrerClient.endConnection()

检查 gclid (Google Ads)

if ("gclid" in referrer) 
  //report to Firebase Analytics
 else 
  //do something else

【讨论】:

这不适用于 Google Ads 应用广告系列,因为这些链接由 Google Ads 管理,并且是直接指向 Play 商店的 intent:// 链接,没有任何熟悉的归因参数。 @CamaroSS 你可以使用类似FirebaseDynamicLinks.getInstance().getDynamicLink(getIntent()) 的东西来获得意图吗? 不起作用,因为 Google 不会深度链接到应用程序本身,只是市场上的安装页面。 @CamaroSS,我认为Play Install Referrer API 是您想要的。希望这会有所帮助 非常感谢!您可能希望更新您的答案,以便检查收到的推荐人 gclid 以了解用户是否来自 Google Ads。那我就接受了。【参考方案2】:

这样,只有当用户点击了浏览器中的广告时,我们才会判断gclid,但如果他点击了play market中的广告,则没有任何作用。

【讨论】:

不清楚这个答案与问题有何关系。 因为我不能写评论 - 我回信了:)

以上是关于Firebase SDK 中的 Google Ads 归因的主要内容,如果未能解决你的问题,请参考以下文章

Google Actions sdk 无法从 Firebase 存储中播放 ssml 中的音频

FireBase 消息无法在 OSGI 包中加载 admin_sdk.properties

一起使用 Google Analytics SDK 和 Firebase SDK

使用私有Google存储的Firebase iOS SDK身份验证

iOS - pod 'Google-Mobile-Ads-SDK' 和 pod 'Firebase/AdMob' 有啥区别

添加 Facebook sdk 和 Google Firebase sdk 时的 Android Proguard 问题(重复)