iOS 的 Firebase Analytics — 具有预定义事件的自定义参数 (Swift)

Firebase Analytics for iOS — custom parameters with predefined events (Swift)

我正在尝试为 Swift iOS 应用实施 Firebase Analytics。 您能否解释一下,是否可以使用预定义的 AnalyticsEvent 传递自定义参数,例如 AnalyticsEventEcommercePurchase https://firebase.google.com/docs/reference/swift/firebaseanalytics/api/reference/Constants#analyticseventecommercepurchase?

例如,我想将 'dicount_amount'、'delivery_type' 添加到该事件。 AnalyticsEventEcommercePurchase 是否可行?

另外,是否可以添加 'items' 数组,其中包含购买的每件商品的参数? 是否可以通过自定义事件传递预定义参数?例如,将 AnalyticsParameterItemId 与我自己的事件 view_product 一起传递?

非常感谢。如果有任何建议和示例,我将不胜感激。

可以。只需将它们与预定义参数一起传递,如下所示:

Analytics.logEvent(AnalyticsEventEcommercePurchase, parameters: [
  AnalyticsParameterCurrency: "aud",
  AnalyticsParameterValue: "999",
  "whatever_you_want": "foo"
])

您还可以在自定义事件中使用预定义参数,因为这些只是字符串。

试试这个:

let parameter =["discount_amount": 5, "delivery_type" : COD] // put all your parameter here 

Analytics.logEvent(EventName, parameters: parameter) //replace EventName with your event name you want to log

是否可以添加 'items' 包含购买中每件商品参数的数组? 目前不可能,因为 firebase 仅支持 Text or Number(Double, Int etc.) ,进一步的数字可以分为不同的类型

我创建一个新的 class 来放置所有 Firebase Analytics 函数

这是例子

class ClientAnalytics
{

    static func purchaseEvent(itemAdded : String , value : Double , currency : String)
{
    Analytics.logEvent(AnalyticsEventEcommercePurchase, parameters:
    [
        AnalyticsParameterItemID   : itemAdded as NSObject,
        AnalyticsParameterValue    : value,
        AnalyticsParameterCurrency : currency
    ])
}

如何调用

ClientAnalytics.purchaseEvent(itemAdded: ToolName, value: toolValue, currency: "USD")

此功能的目的是记录用户的任何购买事件