gpt4 book ai didi

ios - 将字典传递给 Analytics 参数 : Urban Airship

转载 作者:行者123 更新时间:2023-11-30 11:39:58 25 4
gpt4 key购买 nike

我正在尝试在我的应用程序中实现 Urban Airship 分析。我想跟踪应用程序中的每个事件,为此我创建了一个不同的类并将跟踪数据作为字典传递。

已关注 https://docs.urbanairship.com/platform/ios/?swift#ios-screen-tracking链接相同。

我将参数传递为:

    UAirship.shared().analytics.trackScreen("MainScreen")
let event = UACustomEvent()
event.properties = createParamDictionary(paramDict1,paramDict2)
event.track()

由于事件属性是只读的,我无法为其分配/添加数据。我能看到的唯一选择是根据其定义的类型一一添加数据。即。

event.setStringProperty("abcd", forKey: "abcd")
event.setNumberProperty(123, forKey: "xyz")

这对我来说非常乏味。

所以我的问题是:

  1. 我做得正确吗?
  2. 如果是,那么是否有任何其他变量或某种方式可以直接添加参数?
  3. 我还想添加 User_id 来跟踪特定用户。有这方面的规定吗?

谢谢。

最佳答案

我认为您可以为 UACustomEvent 类创建一个自定义方法,该方法采用字典并使用 UA 定义的方法设置值,如下所示,

extension UACustomEvent {

func setEventProperties<T: Any>(_ values: [String: T]) {

for keyValuePair in values {

if let value = keyValuePair.value as? String {
setStringProperty(value: value, forKey: keyValuePair.key)
} else if let value = keyValuePair.value as? Int {
setNumberProperty(value: value, forKey: keyValuePair.key)
}

}

}

}

这样,您就不必每次要设置事件时都使用 setNumberPropertysetStringProperty。你可以简单地这样做,

event.setEventProperties(["abcd": "abcd", "xyz": 123])

关于ios - 将字典传递给 Analytics 参数 : Urban Airship,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49359375/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com