简体   繁体   English

为每个构建版本配置Firebase Analaytics + Google跟踪代码管理器(GTM)

[英]Configure Firebase Analaytics + Google Tag Manager (GTM) per build variant

Before Firebase Analytics became available we use a multi flavour, multi build type Android Gradle project setup, and supply a different GTM container ID for each build variant, as follows: 在Firebase Analytics可用之前,我们使用多风格,多构建类型的Android Gradle项目设置,并为每个构建变体提供不同的GTM容器ID,如下所示:

TagManager.getInstance(context)
        .loadContainerPreferNonDefault(BuildConfig.GTM_CONTAINER_ID, -1);
TagManager.getInstance(context).getDataLayer().pushEvent(eventName, eventData);

where Gradle would inject different GTM_CONTAINER_ID per build variant. Gradle会GTM_CONTAINER_ID每个构建变体注入不同的GTM_CONTAINER_ID

How do we achieve the same with Firebase Analytics + GTM? 我们如何使用Firebase Analytics + GTM实现相同目标? According to docs , we need to download: 根据文档 ,我们需要下载:

  • a GTM container file from GTM dashboard [1] GTM仪表板中的GTM容器文件[1]
  • a google-services.json file from Firebase console [2] 来自Firebase控制台的google-services.json文件[2]

and then just start firing events with this: 然后用这个开始触发事件:

FirebaseAnalytics.getInstance(context).logEvent(eventName, bundle);

Where do we specify the GTM container ID to be used? 我们在哪里指定要使用的GTM容器ID? Or is it auto derived by the file name we download from GTM dashboard and put under assets/containers ? 或者它是从我们从GTM仪表板下载并放在assets/containers下的文件名自动派生的? If so, how do we use different GTM configuration per build variant as we do with GTM legacy Android container? 如果是这样,我们如何使用每个构建变体的不同GTM配置,就像我们使用GTM遗留Android容器一样?

This is how we set up our Gradle multi-flavor project to use different GTM container for each build variant: 这就是我们如何设置Gradle多风味项目以便为每个构建变体使用不同的GTM容器:

/
|_app/
  |_src/
    |_flavor1/
    | |_google-services.json # Google services config for debug
    | |_release/
    |   |_google-services.json # Google services config for flavor1
    |_flavor1Release/
    | |_assets/
    |   |_containers/
    |     |_GTM-ABCXY1.json # GTM container for flavor1
    |
    |_flavor2/
    | |_google-services.json # Google services config for debug
    | |_release/
    |   |_google-services.json # Google services config for flavor2
    |_flavor2Release/
    | |_assets/
    |   |_containers/
    |     |_GTM-ABCXY2.json # GTM container for flavor2
    |
    |_debug/
    | |_assets/
    |   |_containers/
    |     |_GTM-ABCXY3.json # GTM container for debug
    |
    |_main/
      |_res/
      |_java/

Assuming you have 2 flavors flavor1 and flavor2 , and want to have 3 GTM containers, 1 shared for debug build of both flavors, and 1 each for release build of each flavor. 假设你有2种风味的flavor1flavor2 ,并且想拥有3个GTM容器,1个共享用于两种口味的调试构建,每个口味用于每种口味的发布构建。

GTM will connect to the FA dashboard of the project specified by your google-services.json . GTM将连接到google-services.json指定的项目的FA仪表板。 Multi-flavor multi-build type google-services.json support has been available since plugin version 2.1.0 [1] 自插件版本2.1.0 [1]以来,多种类型的多构建类型google-services.json支持已经可用

The container ID is derived from the container file name, as you surmised. 正如您所推测的那样,容器ID是从容器文件名派生的。 To use a per-build variant you can use gradle copy task to stage the correct container. 要使用每个构建变体,您可以使用gradle copy任务来分级正确的容器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 集成GTM(Google跟踪代码管理器)android中的问题 - Issue in Integration GTM (Google Tag Manager ) android 带有Firebase的Google跟踪代码管理器 - Google Tag Manager with Firebase 科尔多瓦Google跟踪代码管理器(GTM)-无法查看分析数据 - Cordova google tag manager (GTM) - can't see hits on analytics 在Android Project中将Google跟踪代码管理器与Firebase集成 - Integrating Google Tag Manager with Firebase in Android Project 事件标签 - Google Tag Manager + Firebase + Google Analytics - Event Tag - Google Tag Manager + Firebase + Google Analytics Google跟踪代码管理器和Firebase Analytics标记在Android设备上不起作用 - Google Tag Manager and Firebase Analytics tag not working on android device 将Google Analytics与FireBase + Google跟踪代码管理器Android SDK配合使用 - Using Google Analytics with FireBase + Google Tag Manager Android SDK Android - Google Analytics管理器,包含Google Analytics和Firebase Analytics - Android - Google tag Manager with Google Analytics and Firebase Analytics 有没有办法使用 Firebase App Distribution 为每个 Android 构建变体配置单独的 serviceCredentialsFile? - Is there a way to configure separate serviceCredentialsFile for each Android build variant with Firebase App Distribution? 由于错误gtm-xxxx.json无效的资源目录名称,因此无法在Xamarin android中实现Google标记管理器 - Unable to implement google tag manager in Xamarin android due to error Invalid resource directory name for gtm-xxxx.json
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM