HI,下午好,新媒易不收取任何费用,公益非盈利机构
24小时服务热线: 4000-162-302
请扫码咨询

新媒易动态

NEWS CENTER

与一个用户在多个设备上使用同一个应用相对应的是:多个用户在同一台设备上操作同一个应用

2021-04-23

 与一个用户在多个设备上使用同一个应用相对应的是:多个用户在同一台设备上操作同一个应用。详细的场景介绍,这里就不再描述,大家自行脑补

在进行埋点方案设计时,为了对用户唯一性进行标识,需要在方案中写明如何采集用户匿名状态下的ID(设备ID)及登录状态下的登录ID,这里分别以first_id、second_id命名,后续文中涉及到的first_id、second_id均指匿名ID、登录ID。

基于采集到的与用户相关的first_id与second_id,在行为分析系统后台通过一定的关联规则,生成一个能够唯一标识用户的user_id,在以后的分析过程中,与用户量有关的指标均以user_id为基础进行统计分析。

匿名ID即设备ID,在不同类型的客户端上有所不同,且同一类型的客户端上,设备ID也并非是唯一的。例如 Web 端的 Cookies 有可能被各种安全卫士清空,而 iOS 端的 IDFV 在不同厂商的 App 间是不同的。

1)Android端

安卓系统经过多次升级,对权限控制越来越严格,唯一识别手机的方法也在不断发生变化。

Android端适合作为设备ID标识符的有OAID、Android_id、UUID、IMEI,IMEI是最适合做设备唯一标识的,但获取IMEI需要授予权限且Android 10以后不再开放IMEI的权限,App 卸载重装 UUID会发生变化。

综合起来,Android端比较适合作为标识符的是Android_id,如果 Android_Id 获取不到,则获取随机的UUID。

2)iOS端

苹果系统,可用于识别唯一设备的标识不像Andriod那样多。综合起来,苹果系统生成设备ID的标识符先后顺序应该是IDFA -> IDFV ->UDID,即优先获取IDFA,获取不到再获取IDFV,获取不到时,再获取UUID。

3)JavaScript

默认情况下使用 cookie_id,存贮在浏览器的cookie中。

4)微信小程序

一般使用UUID,但是删除小程序,UUID 会变。为了保证设备 ID 不变,建议获取并使用 openid。

如果选择使用 openid 的话,请注意操作暂存,由于获取 openid 是一个异步的操作,但是冷启动事件等会先发生,所以我们会把先发生的操作,暂存起来,等获取到 openid 后才会发送数据。

三、如何做用户标识?

在介绍用户标识的实现方法前,先带大家了解一下,当前行为数据分析系统数据储存的模型。

目前主流的数据储存模型是用一张events表存储与用户相关的事件,其中event表中有个distinct_id字段,在事件发生时用户如处于匿名状态,则记录设备ID,登录状态下记录登录ID,用users表用来储存用户的匿名ID(设备ID)、登录ID、基于关联规则生成的user_id等用户属性。

这样通过events表和users表,就可以成功的把用户与事件联系在一起。

1. 用户唯一性标识方案一:只使用设备ID进行标识

适用场景:适合没有用户注册体系,或者极少数用户会进行多设备登录的产品,如工具类产品、搜索引擎、部分电商等。

场景举例:


行为序列说明:


在上述场景中,仅使用设备 ID 识别用户的好处就是逻辑很简单,当然局限性也很明显:

  • 当用户换手机后,用户换手机前后的行为无法关联上。
  • 当用户把手机送给朋友后,朋友的行为却仍记在该用户下。

2. 用户唯一性标识方案二:关联设备ID与登录ID(又称一对一)

适用场景:成功关联设备 ID 和登录 ID 之后,用户在该设备 ID 上或该登录 ID 下的行为就会贯通,被认为是一个user_id发生的。在进行事件、漏斗、留存等用户相关分析时也会算作一个用户。所以一般来说,当遇到以下场景时,考虑一对一的关联:

相关推荐