QSEventHandle.swift 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. //
  2. // QSEventHandle.swift
  3. // QuickSearchLocation
  4. //
  5. // Created by Destiny on 2025/10/11.
  6. //
  7. import UIKit
  8. import GravityEngineSDK
  9. class QSEventHandle: NSObject {
  10. static func gravityPush(eventName: String, eventProps: [String:Any] = [:]){
  11. GravityEngineSDK.sharedInstance()?.track(eventName, properties: eventProps)
  12. }
  13. /// 上传单次事件到服务器
  14. ///
  15. /// - Parameters:
  16. /// - eventType: 事件类型(如 "track")暂时只有track 可以不传
  17. /// - eventName: 事件名称(如 "vip_center_exposure")
  18. /// - eventProps: 事件属性(字典形式,如 `["is_member": false, "entry_point": "open_now"]`)
  19. ///
  20. /// - Example:
  21. /// ```
  22. /// eventPush(
  23. /// eventType: "track",
  24. /// eventName: "button_click",
  25. /// eventProps: ["button_id": "submit"]
  26. /// )
  27. /// ```
  28. ///
  29. static func eventPush(eventType: String = "track", eventName: String, eventProps: [String:Any] = [:]){
  30. GravityEngineSDK.sharedInstance()?.track(eventName, properties: eventProps)
  31. QSLCentralEventManager.shared.uploadEvent(eventType: "track", eventName: eventName, eventProps: eventProps)
  32. }
  33. /// 上传多次事件到服务器
  34. ///
  35. /// - Parameters:
  36. /// - eventType: 事件类型(如 "track")暂时只有track 可以不传
  37. /// - eventName: 事件名称(如 "vip_center_exposure")
  38. /// - eventProps: 事件属性(字典数组形式,如 `[["is_member": false, "entry_point": "open_now"],...]`)
  39. ///
  40. /// - Example:
  41. /// ```
  42. /// eventPush(
  43. /// eventType: "track",
  44. /// eventName: "button_click",
  45. /// eventProps: ["button_id": "submit"]
  46. /// )
  47. /// ```
  48. ///
  49. static func eventArrPush(eventType: String = "track", eventName: String, eventPropsArr: [[String:Any]] = []){
  50. QSLCentralEventManager.shared.uploadEvent(eventType: "track", eventName: eventName, eventPropsArr: eventPropsArr)
  51. }
  52. }