Esempio n. 1
0
    private void OnItemPurchased(PurchasableVirtualItem pvi, string paylod)
    {
        Debug.Log(string.Format("GNOME: ItemPurchased - ItemId: {0}", pvi.ItemId));

        // Set the item information
        ItemHitBuilder itemHitBuilder = new ItemHitBuilder().SetTransactionID(pvi.ID).SetName(pvi.Name).SetSKU(pvi.ItemId);

        // Then set the price
        PurchaseWithMarket      marketItem  = pvi.PurchaseType as PurchaseWithMarket;
        PurchaseWithVirtualItem virtualItem = pvi.PurchaseType as PurchaseWithVirtualItem;

        if (marketItem != null)
        {
            itemHitBuilder.SetPrice(marketItem.MarketItem.Price).SetCurrencyCode(marketItem.MarketItem.MarketCurrencyCode);
        }

        if (virtualItem != null)
        {
            itemHitBuilder.SetPrice(virtualItem.Amount).SetCurrencyCode("Tokens");
        }

        // Now log it
        GoogleAnalyticsV3.instance.LogItem(itemHitBuilder);

        Debug.Log(string.Format("GNOME: Analytics: {0}, {1}, {2}", "Purchase", this.PurchaseButtonLocation, pvi.ItemId));
    }
Esempio n. 2
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);
    }
    public void LogItem(string transID, string name, string sku, string category, double price, long quantity, string currencyCode)
    {
        ItemHitBuilder builder = new ItemHitBuilder().SetTransactionID(transID).SetName(name).SetSKU(sku)
                                 .SetCategory(category)
                                 .SetPrice(price)
                                 .SetQuantity(quantity)
                                 .SetCurrencyCode(currencyCode);

        LogItem(builder);
    }
Esempio n. 5
0
 public void LogItem(ItemHitBuilder builder)
 {
     if (builder.Validate() == null)
     {
         return;
     }
     if (GoogleAnalyticsV4.belowThreshold(logLevel, GoogleAnalyticsV4.DebugMode.VERBOSE))
     {
         Debug.Log("Logging item.");
     }
     mpTracker.LogItem(builder);
 }
 public void LogItem(ItemHitBuilder builder)
 {
     InitializeTracker();
     if (builder.Validate() != null)
     {
         if (belowThreshold(logLevel, DebugMode.VERBOSE))
         {
             UnityEngine.Debug.Log("Logging item.");
         }
         androidTracker.LogItem(builder);
     }
 }
Esempio n. 7
0
    public void LogItem(ItemHitBuilder builder)
    {
        InitializeTracker();
        if (builder.Validate() == null)
        {
            return;
        }

        if (belowThreshold(logLevel, DebugMode.VERBOSE))
        {
            Debug.Log("Logging item.");
        }

        mpTracker.LogItem(builder);
    }
    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)
    {
        InitializeTracker();
        if (builder.Validate() == null)
        {
            return;
        }
        if (GoogleAnalyticsV4.belowThreshold(logLevel, GoogleAnalyticsV4.DebugMode.VERBOSE))
        {
            Debug.Log("Logging item.");
        }
#if UNITY_ANDROID && !UNITY_EDITOR
        androidTracker.LogItem(builder);
#elif UNITY_IPHONE && !UNITY_EDITOR
        iosTracker.LogItem(builder);
#else
        mpTracker.LogItem(builder);
#endif
    }
    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());
    }
Esempio n. 11
0
 internal void LogItem(ItemHitBuilder builder)
 {
     //AndroidJavaObject androidJavaObject = new AndroidJavaObject("com.google.android.gms.analytics.HitBuilders$ItemBuilder");
     //androidJavaObject.Call<AndroidJavaObject>("setTransactionId", new object[1]
     //{
     //	builder.GetTransactionID()
     //});
     //androidJavaObject.Call<AndroidJavaObject>("setName", new object[1]
     //{
     //	builder.GetName()
     //});
     //androidJavaObject.Call<AndroidJavaObject>("setSku", new object[1]
     //{
     //	builder.GetSKU()
     //});
     //androidJavaObject.Call<AndroidJavaObject>("setCategory", new object[1]
     //{
     //	builder.GetCategory()
     //});
     //androidJavaObject.Call<AndroidJavaObject>("setPrice", new object[1]
     //{
     //	builder.GetPrice()
     //});
     //androidJavaObject.Call<AndroidJavaObject>("setQuantity", new object[1]
     //{
     //	builder.GetQuantity()
     //});
     //androidJavaObject.Call<AndroidJavaObject>("setCurrencyCode", new object[1]
     //{
     //	builder.GetCurrencyCode()
     //});
     //object[] args = new object[1]
     //{
     //	androidJavaObject.Call<AndroidJavaObject>("build", new object[0])
     //};
     //tracker.Call("send", args);
 }
 internal void LogItem(ItemHitBuilder builder)
 {
     handler._sendItemWithTransaction(builder);
 }
 internal void LogItem(ItemHitBuilder builder)
 {
 }
Esempio n. 14
0
 public void LogItem(ItemHitBuilder builder)
 {
     InitializeTracker();
     if (builder.Validate() == null) {
       return;
     }
     if (GoogleAnalyticsV3.belowThreshold(logLevel, GoogleAnalyticsV3.DebugMode.VERBOSE)) {
       Debug.Log("Logging item.");
     }
     #if UNITY_ANDROID && !UNITY_EDITOR
     androidTracker.LogItem(builder);
     #elif UNITY_IPHONE && !UNITY_EDITOR
     iosTracker.LogItem(builder);
     #else
     mpTracker.LogItem(builder);
     #endif
 }
Esempio n. 15
0
    public void LogItem(string transID, string name, string sku,
      string category, double price, long quantity, string currencyCode)
    {
        ItemHitBuilder builder = new ItemHitBuilder()
        .SetTransactionID(transID)
        .SetName(name)
        .SetSKU(sku)
        .SetCategory(category)
        .SetPrice(price)
        .SetQuantity(quantity)
        .SetCurrencyCode(currencyCode);

        LogItem(builder);
    }
    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);
    }
 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());
 }
    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());
    }
 internal void LogItem(ItemHitBuilder builder)
 {
     handler._sendItemWithTransaction(builder);
 }
Esempio n. 20
0
    private void OnItemPurchased(PurchasableVirtualItem pvi, string paylod)
    {
        Debug.Log(string.Format("GNOME: ItemPurchased - ItemId: {0}", pvi.ItemId));

        // Set the item information
        ItemHitBuilder itemHitBuilder = new ItemHitBuilder().SetTransactionID(pvi.ID).SetName(pvi.Name).SetSKU(pvi.ItemId);

        // Then set the price
        PurchaseWithMarket marketItem = pvi.PurchaseType as PurchaseWithMarket;
        PurchaseWithVirtualItem virtualItem = pvi.PurchaseType as PurchaseWithVirtualItem;

        if (marketItem != null)
        {
            itemHitBuilder.SetPrice(marketItem.MarketItem.Price).SetCurrencyCode(marketItem.MarketItem.MarketCurrencyCode);
        }

        if (virtualItem != null)
        {
            itemHitBuilder.SetPrice(virtualItem.Amount).SetCurrencyCode("Tokens");
        }

        // Now log it
        GoogleAnalyticsV3.instance.LogItem(itemHitBuilder);

        Debug.Log(string.Format("GNOME: Analytics: {0}, {1}, {2}", "Purchase", this.PurchaseButtonLocation, pvi.ItemId));
    }
 internal void LogItem(ItemHitBuilder builder)
 {
 }