[2.13.0-arch-opt]analytics move to foundation

This commit is contained in:
zhongchao
2023-02-20 19:10:11 +08:00
parent 6d2deb6582
commit 312744e4ee
14 changed files with 46 additions and 97 deletions

View File

@@ -1,65 +0,0 @@
package com.mogo.eagle.core.function.call.analytics
import android.content.Context
import androidx.annotation.Keep
import androidx.collection.ArrayMap
import com.elegant.analytics.Analytics
import com.elegant.analytics.AnalyticsConfig
import com.elegant.analytics.IAnalyticsParamsProvider
import com.elegant.analytics.UploadMode
import com.mogo.cloud.passport.MoGoAiCloudClientConfig
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.utilcode.util.AppUtils
/**
* 埋点&数据统计 管理
* @author donghongyu
*/
object AnalyticsManager {
@Keep
fun init(context: Context?, isDebug: Boolean) {
// 1 - debug 近实时上报积累一条埋点上报或者积累3秒上报一次。
// 2 - 本地缓存聚合上报积累30条埋点上报或者积累60秒上报一次。
AnalyticsConfig.getInstance(context).appKey = "0915430e5fdcbb553391f2a35cb8489f"
AnalyticsConfig.getInstance(context).uploadMode = if (isDebug) UploadMode.instant else UploadMode.cache
AnalyticsConfig.getInstance(context).setShouldLog(isDebug)
// 设置参数提供者
AnalyticsConfig.getInstance(context).paramsProvider = object : IAnalyticsParamsProvider {
// 静态参数
override fun staticParams(): Map<String, Any> {
return getAnalyticsCustomParams(isDebug)
}
//动态参数
override fun dynamicParams(): Map<String, Any>? {
return null
}
}
Analytics.getInstance().start(context)
}
/**
* 埋点
*
* @param event 事件名称
* @param properties 事件参数
*/
fun track(event: String?, properties: HashMap<String, Any>) {
Analytics.getInstance().track(event, properties)
}
/**
* 静态的统计参数
*/
fun getAnalyticsCustomParams(isDebug: Boolean): Map<String, Any> {
val map: MutableMap<String, Any> = ArrayMap()
map["debug"] = if (isDebug) 1 else 0
map["sn"] = MoGoAiCloudClientConfig.getInstance().sn
map["app_version"] = AppUtils.getAppVersionName()
map["app_identity_mode"] = FunctionBuildConfig.appIdentityMode
return map
}
}

View File

@@ -6,7 +6,6 @@ import com.mogo.eagle.core.function.api.autopilot.IMoGoChassisLocationGCJ02Liste
import com.mogo.eagle.core.function.call.base.CallerBase
import com.mogo.eagle.core.utilcode.mogo.logger.Logger
import com.mogo.eagle.core.utilcode.util.CoordinateTransform
import com.mogo.eagle.core.utilcode.util.FileUtils
import com.mogo.eagle.core.utilcode.util.TimeUtils
/**