介绍
埋点是在应用中特定的流程收集一些信息,用来跟踪应用使用的状况,以便后续进一步优化产品或提供运营的数据支撑。如访问数、访客数、停留时长、页面浏览数等等。
埋点的方式
通过介绍可以知道,埋点需要在特定的时机来收集数据,然后上报给服务端进行分析。
而收集的时机就需要看业务需要的数据能在何时收集,如页面停留时长(需要在页面卸载/关闭时上报数据)、页面浏览数(需要在页面访问/加载就上报数据)等等。
手动埋点
手动埋点,顾名思义,在需要上报的地方主动编写相应的上报代码。如注册完成时需要记录上报,则在注册完成逻辑中编写相关的上报代码。
此种方式需要在每个上报的地方进行埋点(编写代码),所以较为繁琐,以及不便于维护。但由于是手动进行埋点,所以可以精准控制埋点的位置,上报精准的数据(对服务端的数据分析较友好),以及可以灵活的自定义事件和属性。
可视化埋点
可视化埋点可以看作是手动埋点的可视化版,通过可视化操作进行对页面的埋点。由于可视化操作,所以可视化埋点只能对可见元素进行埋点,一些复杂页面,动态页面则力不逮了,但也大大降低了埋点的门槛,使非开发人员也可以进行埋点操作,数据也较为准确。
此种方式一般使用第三方平台,毕竟需要开发SDK以及页面的可视化操作,有一定的难度,以及需要耗费不少的时间。
全埋点
全埋点,对应用中的行为进行无差别的记录上报。
此种方式由于是无差别的进行记录上报,所以对于服务端的数据分析非常不友好,需要先进行数据筛选,再进行数据分析,数据量也非常大。
此处就主要实现此种方式的SDK。
埋点的分类
一般情况下,主要有3类埋点:展现埋点+曝光埋点+交互埋点。
- 展现埋点
定义展现其实是一个服务端的触发。服务端被触发后,用户侧将会展示什么内容,展现埋点需要记录的是页面展现的内容,即服务端下发的内容是什么(这些东西一定是当前页面主要内容,不包含一些交互信息)。
- 曝光埋点
哪些下发的内容被用户实际看到了。和展现埋点类似,由于屏幕有限,但内容可以无限。哪些内容被用户侧世纪看到(曝光),需要记录的是单个“内容”被看到。一系列被下发的内容,可以触发多次埋点曝光。
- 交互埋点
交互埋点表明的是功能/内容被用户“点击“了。从埋点时机来说,这个是展现&曝光的下游。记录对于我们提供的”服务“的”消费“情况。比如,一个页面,用户可以点击,那么我们需要记录相应的交互动作埋点;比如,一个视频可以点赞,我们也可以记录交互埋点;比如,一个视频可以播放暂停,我们也可以记录消费埋点。