Merge branch 'dev_arch_opt_3.0' into dev_robobus-m1-p-app-module_1.0.0_230112_1.0.0
This commit is contained in:
@@ -1,56 +0,0 @@
|
||||
package com.mogo.commons.analytics;
|
||||
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import com.elegant.analytics.Analytics;
|
||||
import com.elegant.analytics.AnalyticsConfig;
|
||||
import com.elegant.analytics.IAnalyticsParamsProvider;
|
||||
import com.elegant.analytics.UploadMode;
|
||||
import com.mogo.commons.AbsMogoApplication;
|
||||
import com.mogo.commons.debug.DebugConfig;
|
||||
import com.mogo.commons.network.ParamsUtil;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import androidx.annotation.Keep;
|
||||
|
||||
/**
|
||||
* @author congtaowang
|
||||
* @since 2019-12-23
|
||||
* <p>
|
||||
* 埋点
|
||||
*/
|
||||
public class AnalyticsUtils {
|
||||
|
||||
@Keep
|
||||
public static void init( Context context ) {
|
||||
// 1 - debug 近实时上报,积累一条埋点上报,或者积累3秒上报一次。
|
||||
// 2 - 本地缓存,聚合上报,积累30条埋点上报,或者积累60秒上报一次。
|
||||
AnalyticsConfig.getInstance( context ).setAppKey( "0915430e5fdcbb553391f2a35cb8489f" );
|
||||
AnalyticsConfig.getInstance( context ).setUploadMode( DebugConfig.isDebug() ? UploadMode.instant : UploadMode.cache );
|
||||
AnalyticsConfig.getInstance( context ).setShouldLog( DebugConfig.isDebug() );
|
||||
AnalyticsConfig.getInstance( AbsMogoApplication.getApp() ).setParamsProvider(new IAnalyticsParamsProvider() {
|
||||
@Override
|
||||
public Map< String, Object > staticParams() {
|
||||
return ParamsUtil.getAnalyticsCustomParams();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map< String, Object > dynamicParams() {
|
||||
return null;
|
||||
}
|
||||
} );
|
||||
Analytics.getInstance().start( context );
|
||||
}
|
||||
|
||||
/**
|
||||
* 埋点
|
||||
*
|
||||
* @param event 事件名称
|
||||
* @param properties 事件参数
|
||||
*/
|
||||
public static void track( String event, Map< String, Object > properties ) {
|
||||
Analytics.getInstance().track( event, properties );
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
package com.mogo.commons.utils
|
||||
|
||||
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 MogoAnalyticUtils {
|
||||
|
||||
@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: MutableMap<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
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user