Расширенная электронная коммерция для Android - события из документа и не заполнение отчетов

Поэтому я пытался внедрить Enhanced Ecom в приложение для Android с GTM. Это не работает, потому что события добавления в корзину и покупки не работают.

Я попытался скопировать рекомендованные вызовы в документе, чтобы посмотреть, будет ли это работать. Данные все еще поступают неправильно. У вас есть идея, в чем может быть проблема?

Вот код:

TagManager tagManager = TagManager.getInstance(this);
DataLayer dataLayer = tagManager.getDataLayer();

Показы (запущен на странице просмотра тега, работает)

dataLayer.push("ecommerce",
 DataLayer.mapOf(
 "currencyCode", "EUR", // Local currency is optional.
 "impressions", DataLayer.listOf(
 DataLayer.mapOf(
 "name", "Triblend Android T-Shirt", // Name or ID is required.
 "id", "12345",
 "price", "15.25",
 "brand", "Google",
 "category", "Apparel",
 "variant", "Gray",
 "list", "Search Results",
 "position", 1),
 DataLayer.mapOf(
 "name", "Donut Friday Scented T-Shirt",
 "id", "67890",
 "price", "33.75",
 "brand", "Google",
 "category", "Apparel",
 "variant", "Black",
 "list", "Search Results",
 "position", 2))));

Клики (запущены с событием, работают)

dataLayer.pushEvent("productClick",
 DataLayer.mapOf(
 "ecommerce", DataLayer.mapOf(
 "click", DataLayer.mapOf(
 "actionField", DataLayer.mapOf(
 "list", "Search Results"), // Optional list property.
 "products", DataLayer.listOf(
 DataLayer.mapOf(
 "name", "Triblend Android T-Shirt", // Name or ID is required.
 "id", "12345",
 "price", "15.25",
 "brand", "Google",
 "category", "Apparel",
 "variant", "Gray"))))));

Деталь (срабатывает на тег просмотра страницы, работает)

dataLayer.push("ecommerce",
 DataLayer.mapOf(
 "detail", DataLayer.mapOf(
 "actionField", DataLayer.mapOf(
 "list", "Apparel Gallery"), // detail actions have an optional list property.
 "products", DataLayer.listOf(
 DataLayer.mapOf(
 "name", "Triblend Android T-Shirt", // Name or ID is required.
 "id", "12345",
 "price", "15.25",
 "brand", "Google",
 "category", "Apparel",
 "variant", "Gray")))));

Добавить в корзину (запускается с пользовательским событием, событие запускается в GA, но данные не поступают. Даже если на теге активирован слой данных)

dataLayer.pushEvent("addToCart",
 DataLayer.mapOf(
 "ecommerce", DataLayer.mapOf(
 "currencyCode", "EUR",
 "add", DataLayer.mapOf( // 'add' actionFieldObject measures.
 "products", DataLayer.listOf(
 DataLayer.mapOf(
 "name", "Triblend Android T-Shirt",
 "id", "12345",
 "price", "15.25",
 "brand", "Google",
 "category", "Apparel",
 "variant", "Gray",
 "quantity", 1))))));

Оформить заказ (запущен с событием, работает)

dataLayer.pushEvent("checkout",
 DataLayer.mapOf(
 "ecommerce", DataLayer.mapOf(
 "checkout", DataLayer.mapOf(
 "actionField", DataLayer.mapOf(
 "step", 1,
 "option", "Visa"),
 "products", DataLayer.listOf(
 DataLayer.mapOf(
 "name", "Triblend Android T-Shirt",
 "id", "12345",
 "price", "15.25",
 "brand", "Google",
 "category", "Apparel",
 "variant", "Gray",
 "quantity", 1))))));

Чтобы заставить покупку работать, мы отправляем просмотр страницы сразу после кода, просто чтобы убедиться, что мы отправили запрос после, чтобы гарантировать, что данные могут достичь GA.

dataLayer.push("ecommerce",
 DataLayer.mapOf(
 "purchase", DataLayer.mapOf(
 "actionField", DataLayer.mapOf(
 "id", "T12345", // Transaction ID. Required for purchases and refunds.
 "affiliation", "Online Store",
 "revenue", "35.43", // Total transaction value (incl. tax and shipping)
 "tax", "4.90",
 "shipping", "5.99",
 "coupon", "SUMMER_SALE"),
 "products", DataLayer.listOf( // List of productFieldObjects.
 DataLayer.mapOf(
 "name", "Triblend Android T-Shirt", // Name or ID is required.
 "id", "12345",
 "price", "15.25",
 "brand", "Google",
 "category", "Apparel",
 "variant", "Gray",
 "quantity", 1,
 "coupon", ""), // Optional fields may be omitted or set to empty string.
 DataLayer.mapOf(
 "name", "Donut Friday Scented T-Shirt",
 "id", "67890",
 "price", "33.75",
 "brand", "Google",
 "category", "Apparel",
 "variant", "Black",
 "quantity", 1))))); 

dataLayer.push(DataLayer.mapOf("event", "openScreen", "screenName", "TEST_SCREEN"));
  } 

Любая идея, почему Добавить в корзину и Покупка не будет работать с этим, даже если информация о покупке (которая отправляется после)?

Спасибо,

0 ответов

Другие вопросы по тегам