Включение расширенной электронной коммерции для проекта Firebase GA - PullRequest
1 голос
/ 28 марта 2019

В настоящее время мы работаем над переходом от использования GA Legacy SDK к Firebase SDK в нашем мобильном приложении.В целом все шло отлично, за исключением того, что расширенная электронная коммерция не работает "из коробки".

Я использую событие "ecommerce_purchase", но не могу передать фактически купленные предметы в GA, получаю только количество предметов.Вот код, который я использую, он находится на C #, так как мы используем Xamarin:

    public void LogTransaction(OrderStatus order, Basket basket)
    {
        if (_firebaseAnalytics == null)
            return;

        var products = new List<IParcelable>();
        foreach (var product in basket.Products)
        {
            products.Add(CreateProductBundle(product));
        }

        var transactionBundle = new Bundle();
        transactionBundle.PutParcelableArrayList("items", products.ToArray());
        transactionBundle.PutString(FirebaseAnalytics.Param.TransactionId, order.Id);
        transactionBundle.PutDouble(FirebaseAnalytics.Param.Value, (double)order.Total);
        transactionBundle.PutDouble(FirebaseAnalytics.Param.Tax, (double)basket.SalesTax);
        transactionBundle.PutString(FirebaseAnalytics.Param.Currency, "USD");
        transactionBundle.PutString(FirebaseAnalytics.Param.Coupon, basket.Coupon?.CouponCode);

        _firebaseAnalytics.LogEvent(FirebaseAnalytics.Event.EcommercePurchase, transactionBundle);
    }

    private Bundle CreateProductBundle(BasketProduct basketProduct)
    {
        var product = new Bundle();
        product.PutString(FirebaseAnalytics.Param.ItemId, basketProduct.ProductId.ToString());
        product.PutString(FirebaseAnalytics.Param.ItemName, basketProduct.Name);
        product.PutString(FirebaseAnalytics.Param.ItemCategory, string.Empty);
        product.PutDouble(FirebaseAnalytics.Param.Price, (double)basketProduct.BaseCost);
        product.PutString(FirebaseAnalytics.Param.Currency, "USD");
        product.PutLong(FirebaseAnalytics.Param.Quantity, basketProduct.Quantity);

        return product;
    }

Глядя на это google doc Я могу сделать это с GTM.Тем не менее, имеется 0 документов по настройке тега GTM для Google Analytics (Firebase).

Существует много информации о том, как это сделать для Google Analytics - Universal Analytics, но это больше не подходит для мобильных приложений, поскольку у меня нет доступа к идентификатору отслеживания Google Analytics.

Кто-нибудь нашел способ обойти это безобразие?Или, точнее, у кого-нибудь есть ссылка на хороший учебник, который поможет мне настроить тег "ecommerce_purchase" в GTM.enter image description here

...