事件名称规范:事件名(做什么)+场景(在哪)+行为(怎么做)
例如:首页曝光;首页-PLAYNOW 按钮-点击,
建议用英文,例如:home_exposure、home_playnow_click
统一事件命名规范,避免埋点混乱,提升数据可分析性
公共参数:自动注入
业务参数:调用方传入
业务参数规范:建议统一前缀,例如:video_id、file_name、nas_ip
隐私数据不要收集(用户本地数据的标识)
duration:页面停留时长
/// 埋点方法实现
static func tracking(eventName: String, params: [String: Any] = [:], duration: Double = 0) {
var properties = params
if duration > 0 {
properties["duration"] = duration
}
// 公共参数
if let userId = AWUserManager.shared.userID {
properties["user_id"] = String(userId)
}
properties["platform"] = "tvOS"
properties["app_version"] = AWTool.appVersion()
// 业务参数
var firebaseParams: [String: Any] = [:]
for (key, value) in properties {
firebaseParams[key] = validString(value)
}
// firebase 上报
Analytics.logEvent(eventName, parameters: firebaseParams)
}
// 使用
AWAnalyticsManager.tracking(eventName: "首页曝光", params: ["event_type": "view"], duration: duration)
本文作者:oyph
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!