Exemple #1
0
 public void _sendItemWithTransaction(ItemHitBuilder builder)
 {
     _buildCustomMetricsDictionary(builder);
     _buildCustomDimensionsDictionary(builder);
     _buildCampaignParametersDictionary(builder);
     sendItemWithTransaction(builder.GetTransactionID(), builder.GetName(), builder.GetSKU(), builder.GetCategory(), builder.GetPrice(), builder.GetQuantity(), builder.GetCurrencyCode());
 }
    internal void LogItem(ItemHitBuilder builder)
    {
        object[] args;
        if (builder.GetCurrencyCode() != null)
        {
            args = new object[7];
            // TODO: Validate currency code
            args[6] = builder.GetCurrencyCode();
        }
        else
        {
            args = new object[6];
        }
        args[0] = builder.GetTransactionID();
        args[1] = builder.GetName();
        args[2] = builder.GetSKU();
        args[3] = builder.GetCategory();
        args[4] = new AndroidJavaObject("java.lang.Double", builder.GetPrice());
        args[5] = new AndroidJavaObject("java.lang.Long", builder.GetQuantity());

        object map;
        Dictionary <AndroidJavaObject, string> parameters =
            AddCustomVariablesAndCampaignParameters(builder);

        if (parameters != null)
        {
            map = BuildMap(GoogleAnalyticsV3.ITEM_HIT, args, parameters);
        }
        else
        {
            map = BuildMap(GoogleAnalyticsV3.ITEM_HIT, args);
        }
        tracker.Call(GoogleAnalyticsV3.SEND, map);
    }
    internal void LogItem(ItemHitBuilder builder)
    {
        AndroidJavaObject itemBuilder = new AndroidJavaObject("com.google.android.gms.analytics.HitBuilders$ItemBuilder");

        itemBuilder.Call <AndroidJavaObject>("setTransactionId", new object[] { builder.GetTransactionID() });
        itemBuilder.Call <AndroidJavaObject>("setName", new object[] { builder.GetName() });
        itemBuilder.Call <AndroidJavaObject>("setSku", new object[] { builder.GetSKU() });
        itemBuilder.Call <AndroidJavaObject>("setCategory", new object[] { builder.GetCategory() });
        itemBuilder.Call <AndroidJavaObject>("setPrice", new object[] { builder.GetPrice() });
        itemBuilder.Call <AndroidJavaObject>("setQuantity", new object[] { builder.GetQuantity() });
        itemBuilder.Call <AndroidJavaObject>("setCurrencyCode", new object[] { builder.GetCurrencyCode() });

        object[] builtItem = new object[] { itemBuilder.Call <AndroidJavaObject>("build") };
        tracker.Call("send", builtItem);
    }
    public void LogItem(ItemHitBuilder builder)
    {
        trackerValues[Fields.TRANSACTION_ID] = null;
        trackerValues[Fields.ITEM_NAME]      = null;
        trackerValues[Fields.ITEM_SKU]       = null;
        trackerValues[Fields.ITEM_CATEGORY]  = null;
        trackerValues[Fields.ITEM_PRICE]     = null;
        trackerValues[Fields.ITEM_QUANTITY]  = null;
        trackerValues[Fields.CURRENCY_CODE]  = null;

        SendGaHitWithMeasurementProtocol(url
                                         + AddRequiredMPParameter(Fields.HIT_TYPE, "item")
                                         + AddRequiredMPParameter(Fields.TRANSACTION_ID, builder.GetTransactionID())
                                         + AddRequiredMPParameter(Fields.ITEM_NAME, builder.GetName())
                                         + AddOptionalMPParameter(Fields.ITEM_SKU, builder.GetSKU())
                                         + AddOptionalMPParameter(Fields.ITEM_CATEGORY, builder.GetCategory())
                                         + AddOptionalMPParameter(Fields.ITEM_PRICE, builder.GetPrice())
                                         + AddOptionalMPParameter(Fields.ITEM_QUANTITY, builder.GetQuantity())
                                         + AddOptionalMPParameter(Fields.CURRENCY_CODE, builder.GetCurrencyCode())
                                         + AddCustomVariables(builder)
                                         + AddCampaignParameters(builder)
                                         + AddTrackerVals());
    }
    public void LogItem(ItemHitBuilder builder)
    {
        trackerValues[Fields.TRANSACTION_ID] = null;
        trackerValues[Fields.ITEM_NAME] = null;
        trackerValues[Fields.ITEM_SKU] = null;
        trackerValues[Fields.ITEM_CATEGORY] = null;
        trackerValues[Fields.ITEM_PRICE] = null;
        trackerValues[Fields.ITEM_QUANTITY] = null;
        trackerValues[Fields.CURRENCY_CODE] = null;

        SendGaHitWithMeasurementProtocol(url
        + AddRequiredMPParameter(Fields.HIT_TYPE,"item")
        + AddRequiredMPParameter(Fields.TRANSACTION_ID,builder.GetTransactionID())
        + AddRequiredMPParameter(Fields.ITEM_NAME,builder.GetName())
        + AddOptionalMPParameter(Fields.ITEM_SKU,builder.GetSKU())
        + AddOptionalMPParameter(Fields.ITEM_CATEGORY,builder.GetCategory())
        + AddOptionalMPParameter(Fields.ITEM_PRICE,builder.GetPrice())
        + AddOptionalMPParameter(Fields.ITEM_QUANTITY,builder.GetQuantity())
        + AddOptionalMPParameter(Fields.CURRENCY_CODE,builder.GetCurrencyCode())
        + AddCustomVariables(builder)
        + AddCampaignParameters(builder)
        + AddTrackerVals());
    }
 public void _sendItemWithTransaction(ItemHitBuilder builder)
 {
     _buildCustomMetricsDictionary(builder);
     _buildCustomDimensionsDictionary(builder);
     _buildCampaignParametersDictionary(builder);
     sendItemWithTransaction(builder.GetTransactionID(), builder.GetName(), builder.GetSKU(), builder.GetCategory(), builder.GetPrice(), builder.GetQuantity(),builder.GetCurrencyCode());
 }
    internal void LogItem(ItemHitBuilder builder)
    {
        object[] args;
        if (builder.GetCurrencyCode() != null) {
          args = new object[7];
          args[6] = builder.GetCurrencyCode();
        } else {
          args = new object[6];
        }
        args[0] = builder.GetTransactionID();
        args[1] = builder.GetName();
        args[2] = builder.GetSKU();
        args[3] = builder.GetCategory();
        args[4] = new AndroidJavaObject("java.lang.Double", builder.GetPrice());
        args[5] = new AndroidJavaObject("java.lang.Long", builder.GetQuantity());

        object map;
        Dictionary<AndroidJavaObject, string> parameters = AddCustomVariablesAndCampaignParameters(builder);
        if (parameters != null) {
          map = BuildMap(GoogleAnalyticsV3.ITEM_HIT, args, parameters);
        } else {
          map = BuildMap(GoogleAnalyticsV3.ITEM_HIT, args);
        }
        tracker.Call(GoogleAnalyticsV3.SEND, map);
    }