QSLGravityManager.swift 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. //
  2. // QSLGravityManager.swift
  3. // QuickSearchLocation
  4. //
  5. // Created by Destiny on 2024/12/23.
  6. //
  7. import Foundation
  8. import GravityEngineSDK
  9. var gravityInstance: GravityEngineSDK?
  10. class QSLGravityManager {
  11. func initGE() {
  12. // 引力引擎
  13. let config = GEConfig()
  14. config.appid = QSLGravityConst.appid
  15. config.accessToken = QSLGravityConst.accessToken
  16. GravityEngineSDK.start(with: config)
  17. let instance = GravityEngineSDK.sharedInstance(withAppid: config.appid)
  18. gravityInstance = instance
  19. // 开启自动采集
  20. instance?.enableAutoTrack(GravityEngineAutoTrackEventType.eventTypeAll)
  21. print("启动引力引擎")
  22. let idfa = QSLApi.params["idfa"] as? String ?? ""
  23. let idfv = QSLApi.params["idfv"] as? String ?? ""
  24. let version = QSLApi.params["appVersionCode"] as? Int ?? 100
  25. instance?.initializeGravityEngine(withAsaEnable: true, withCaid1: "", withCaid2: "", withSyncAttribution: true, withChannel: "AppStore", withSuccessCallback: { response in
  26. print("gravity engine initialize success, response is---", response)
  27. if let clickCom = response["click_company"] as? String {
  28. QSLGuideusersToCommentManager.commentShare.clickCompanyChannel = clickCom
  29. }
  30. // 检查订单
  31. QSLBaseManager.shared.initPayCheck()
  32. gravityInstance?.track(QSLGravityConst.launch_show)
  33. if let clientId = gravityInstance?.getCurrentClientId() {
  34. QSLBaseManager.shared.uploadClientId(clientId: clientId)
  35. }
  36. }, withErrorCallback: { error in
  37. print("gravity engine initialize failed, and error is", error)
  38. // 检查订单
  39. QSLBaseManager.shared.initPayCheck()
  40. })
  41. //开始统计时长
  42. QSLStatisticsUserTimeManager.shared.startTracking()
  43. }
  44. }