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. return;
  13. // 引力引擎
  14. let config = GEConfig()
  15. config.appid = QSLGravityConst.appid
  16. config.accessToken = QSLGravityConst.accessToken
  17. GravityEngineSDK.start(with: config)
  18. let instance = GravityEngineSDK.sharedInstance(withAppid: config.appid)
  19. gravityInstance = instance
  20. // 开启自动采集
  21. instance?.enableAutoTrack(GravityEngineAutoTrackEventType.eventTypeAll)
  22. print("启动引力引擎")
  23. let idfa = QSLApi.params["idfa"] as? String ?? ""
  24. let idfv = QSLApi.params["idfv"] as? String ?? ""
  25. let version = QSLApi.params["appVersionCode"] as? Int ?? 100
  26. instance?.initializeGravityEngine(withAsaEnable: true, withCaid1: "", withCaid2: "", withSyncAttribution: true, withChannel: "AppStore", withSuccessCallback: { response in
  27. print("gravity engine initialize success, response is---", response)
  28. if let clickCom = response["click_company"] as? String {
  29. QSLGuideusersToCommentManager.commentShare.clickCompanyChannel = clickCom
  30. }
  31. // 检查订单
  32. QSLBaseManager.shared.initPayCheck()
  33. gravityInstance?.track(QSLGravityConst.launch_show)
  34. if let clientId = gravityInstance?.getCurrentClientId() {
  35. QSLBaseManager.shared.uploadClientId(clientId: clientId)
  36. }
  37. }, withErrorCallback: { error in
  38. print("gravity engine initialize failed, and error is", error)
  39. // 检查订单
  40. QSLBaseManager.shared.initPayCheck()
  41. })
  42. //开始统计时长
  43. QSLStatisticsUserTimeManager.shared.startTracking()
  44. }
  45. }