使用 firebase 捆绑包通过 GTM v5 增强电子商务标签

Enhanced e-commerce tag through GTM v5 using firebase bundle

我正在开发电子商务 Android 应用程序,我想通过 GTM v5(包含在 Firebase SDK 中)在 Google Analytics 上跟踪增强型电子商务事件。

为此,为了发送 "impressions" 事件,我尝试将旧数据层转换为 GTM v5 使用 Firebase SDK 接受的 bundle 对象。

所以,下面的数据层

DataLayer.mapOf(
                    "currencyCode", "EUR",                                  // Local currency is optional.
                    "impressions", DataLayer.listOf(
                            DataLayer.mapOf(
                                    "name", produitsDispo.get(0).name,             // Name or ID is required.
                                    "id", produitsDispo.get(0).sku,
                                    "price", produitsDispo.get(0).price,
                                    "brand", produitsDispo.get(0).brand,
                                    "category", produitsDispo.get(0).category,
                                    "variant", produitsDispo.get(0).variant,
                                    "list", produitsDispo.get(0).category,
                                    "position", 1),
                            DataLayer.mapOf(
                                    "name", produitsDispo.get(1).name,
                                    "id", produitsDispo.get(1).sku,
                                    "price", produitsDispo.get(1).price,
                                    "brand", produitsDispo.get(1).brand,
                                    "category", produitsDispo.get(1).category,
                                    "variant", produitsDispo.get(1).variant,
                                    "list", produitsDispo.get(1).category,
                                    "position", 2),
                            DataLayer.mapOf(
                                    "name", produitsDispo.get(2).name,
                                    "id", produitsDispo.get(2).sku,
                                    "price", produitsDispo.get(2).price,
                                    "brand", produitsDispo.get(2).brand,
                                    "category", produitsDispo.get(2).category,
                                    "variant", produitsDispo.get(2).variant,
                                    "list", produitsDispo.get(2).category,
                                    "position", 3)));

现在是:

Bundle myBundle = new Bundle();
myBundle.putString("currencyCode", "EUR");
myBundle.putParcelableArrayList("impressions", constructBundleImpressions(produitsDispo));
mFirebaseAnalytics.logEvent("ecommerce", myBundle);

  public ArrayList<Bundle> constructBundleImpressions(ArrayList<Item> produitsDispo){
    ArrayList<Bundle> bundleImpressions = new ArrayList<Bundle>();
    Bundle tempBundle = new Bundle();
    for (int i=0; i<produitsDispo.size();i++){
        tempBundle.clear();
        tempBundle.putString("name", produitsDispo.get(i).name);
        Log.d("AAAAA ; ", produitsDispo.get(i).name);
        tempBundle.putString("id", produitsDispo.get(i).sku);
        tempBundle.putString("price", produitsDispo.get(i).price.toString());
        tempBundle.putString("brand", produitsDispo.get(i).brand);
        tempBundle.putString("category", produitsDispo.get(i).category);
        tempBundle.putString("variant", produitsDispo.get(i).variant);
        tempBundle.putString("list", produitsDispo.get(i).category);
        tempBundle.putInt("position", i+1);
        bundleImpressions.add(tempBundle);
    }

我已经用值、触发器和标签配置了我的 GTM 容器,但命中没有出现在 Google Analytics 仪表板上。

我认为这个问题的发生是因为 Firebase 不接受事件的复杂包,所以即使它是正确的,带有 ArrayList 的包也不会被 Firebase 事件记录器解释。

你对此有何看法?你遇到过这样的问题吗?

根据该页面 https://support.google.com/tagmanager/answer/7003315?hl=en

Ecommerce arrays: Support for ecommerce tags that require arrays of data (e.g. Google Analytics Enhanced Ecommerce) will be available at a later date.

并且发行说明通知该主题没有进一步的进展: https://support.google.com/tagmanager/answer/4620708?hl=en&ref_topic=6003219