最近公司有意向运用Google Tag Manager来管理App中的埋点事情,本篇文章介绍下Google Tag Manager的接入。

Google Tag Manager

Google Tag Manager基于Firebase Analytics,通过Google Tag Manager,能够实现和管理App中的埋点事情,并轻松的分发到其他统计渠道。

支撑渠道

  • Floodlight
  • Google Ads
  • adjust
  • AppsFlyer
  • Apsalar
  • Kochava
  • Tune
  • Custom Function Calls(适用于其他产品)

前置条件

1. 集成Firebase SDK

在项目app module的build.gradle中的dependencies中添加依靠:

dependencies {
  // 运用Firebase Andorid bom(官方推荐)
  implementation platform('com.google.firebase:firebase-bom:31.1.0') 
  implementation 'com.google.firebase:firebase-analytics' 
    // 不运用bom
    implementation 'com.google.firebase:firebase-analytics:21.2.0'
}

上报事情

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        val firebaseAnalytics = FirebaseAnalytics.getInstance(this)
        // 参数
        val bundle = Bundle()
        firebaseAnalytics.logEvent("test_track", bundle)
    }
}

2. 创立Google Tag Manager账号

在Google Tag Manager后台创立账号,如下图;

Android 接入Google Tag Manager

挑选安卓使用,如下图:

Android 接入Google Tag Manager

3. 装备Google Tag Manager(以AppsFlyer为例)

AppsFlyer的帮助中心有相关的文档:

  • Tag Manager setup
  • Sending events

3.1 装备变量

(1)在后台的作业区中选中变量,在用户自定义变量中点击新建变量,如下图:

Android 接入Google Tag Manager
(2)变量命名为AppsFlyer Dev Key,并点击变量装备,如下图:

Android 接入Google Tag Manager

(3)挑选变量类型为事情参数,如下图:

Android 接入Google Tag Manager

(4)Event Type挑选Custom Parameter,键设置为dev_key,保存变量,如下图:

Android 接入Google Tag Manager

*重复上述步骤创立变量AppsFlyer Device ID,键值为af_id。

3.2 装备代码

(1)在后台的作业区中选中代码,点击新建,如下图:

Android 接入Google Tag Manager

(2)点击代码装备,如下图:

Android 接入Google Tag Manager

(3)代码类型挑选AppsFlyer,如下图:

Android 接入Google Tag Manager

(4)修正AppsFlyer的装备,如下图:

Android 接入Google Tag Manager

(5)点击触发条件,如下图:

Android 接入Google Tag Manager

(6)触发器挑选All Events(如果只需求分发特定的事情,能够创立不同的触发器),如下图:

Android 接入Google Tag Manager

(7)保存代码装备

Android 接入Google Tag Manager

3.3 提交更改

(1)在后台的作业区中选中概览,点击提交,如下图:

Android 接入Google Tag Manager

(2)在提交装备中挑选创立版别,点击创立,如下图:

Android 接入Google Tag Manager

3.4 测试与发布

(1)在后台的作业区中选中概览,点击最新版别,如下图:

Android 接入Google Tag Manager

(2)点击下载,下载装备文件Json待用(接入SDK时会用到),如下图:

Android 接入Google Tag Manager

(3)点击预览,如下图:

Android 接入Google Tag Manager

(4)装备包名,生成预览链接,测试使用接好SDK并安装到设备后先封闭使用,通过预览链接翻开,如下图:

Android 接入Google Tag Manager

(5)测试没有问题后能够进行发布,如下图:

Android 接入Google Tag Manager

集成Google Tag Manager SDK

(1)在项目app module的build.gradle中的dependencies中添加依靠:

dependencies {
    implementation 'com.google.android.gms:play-services-tagmanager:18.0.2'
}

(2)添加装备

在app/src/main/assets中创立containers文件夹,并将之前下载的装备Json放到该文件夹中,如下图:

Android 接入Google Tag Manager

(3)调整发送事情代码

需求添加AppsFlyer的SDK,如下:

dependencies {
    implementation 'com.appsflyer:af-android-sdk:6.9.4'
}

上报事情时需求传入参数dev_key和af_id,如下图:

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        val firebaseAnalytics = FirebaseAnalytics.getInstance(this)
        // 参数
        val bundle = Bundle()
        bundle.putString("dev_key", "keyValue")
        bundle.putString("af_id", AppsFlyerLib.getInstance().getAppsFlyerUID(context))
        firebaseAnalytics.logEvent(eventName, bundle)
    }
}

测试

敞开Google Tag Manager日志

adb shell setprop log.tag.GoogleTagManager VERBOSE

实测作用:

Android 接入Google Tag Manager

Android 接入Google Tag Manager