Google analytics 客户端ID和/或用户ID-使用哪个?

Google analytics 客户端ID和/或用户ID-使用哪个?,google-analytics,measurement-protocol,Google Analytics,Measurement Protocol,我的特定环境背景:我正在尝试设置GA,以跟踪用户在使用React native编写的iOS本机应用程序中的行程。该应用程序仅供内部使用,所有用户都同意以这种方式进行跟踪 据我所知,测量协议允许客户端ID(cid)或用户ID(uid)。在文档中,两者都是可选的,但至少需要一个。到目前为止是有道理的。客户端ID是跟踪浏览器或设备的匿名UUIDv4,但不一定是用户。另一方面,用户ID是用户的一些唯一标识值,但可能跨越设备/浏览器 最初我使用cid编写应用程序(因为我还没有阅读uid上的文档)。每次用户

我的特定环境背景:我正在尝试设置GA,以跟踪用户在使用React native编写的iOS本机应用程序中的行程。该应用程序仅供内部使用,所有用户都同意以这种方式进行跟踪

据我所知,测量协议允许客户端ID(
cid
)或用户ID(
uid
)。在文档中,两者都是可选的,但至少需要一个。到目前为止是有道理的。客户端ID是跟踪浏览器或设备的匿名UUIDv4,但不一定是用户。另一方面,用户ID是用户的一些唯一标识值,但可能跨越设备/浏览器

最初我使用
cid
编写应用程序(因为我还没有阅读
uid
上的文档)。每次用户登录时,用户的uuid都将被存储并作为
cid
参数发送。我还使用了会话控制
sc
。这起作用了-我看到会话进入,用户浏览器向我显示了各个用户UUID和会话等。但是在重新阅读文档时,这似乎是对
cid
的错误使用。似乎
cid
是为了保持一致,而不是在登录和注销时发生变化

由于我的应用程序上的用户可以登录和注销(可能会-工作人员可能会共享设备),因此使用特定于该设备的长时间
cid
,将不允许我跟踪单个用户的习惯并在每次登录会话中更改,如上所述,这感觉是错误的

所以我把
cid
换成了
uid
。文档说两者都是可选的,只有在另一个未使用时才需要一个,所以我想我可以使用
uid
并在该字段中使用用户的uuid,否则的话,它的行为是相同的

然而,当这样做的时候,似乎没有点击被登记在所有“实时数据”以及用户浏览器中

我做错了什么,还是故意的?(如果按照设计,文档中说
cid
uid
都是可选的,还是我读错了?)

无论哪种方式,就最佳实践而言,我是否:

  • 只需返回到使用短暂的
    cid
    ,它只会在人们登录和注销时发生变化。应用程序中的单个会话不会更改cid,但我确实使用
    sc
    通过导航推断明确启动和结束会话(单击“主页”=
    sc=end
    ,从“主页”导航,
    sc=start

  • 在我尝试使用时使用
    uid
    (即关闭
    uid
    的当前
    cid
    ),但也包括一个永不更改的随机
    cid
    (无论会话生存期、登录和注销等)

  • 还有别的吗



我已经看到了,但它并没有真正回答我的实际问题,即如何实际使用
cid
uid
,以及我的问题是我还是GA的工作方式。

Oki所以客户端id是随机生成的值,必须随所有点击一起发送。 在未启用用户ID的视图中,客户端ID用于计算唯一用户。在启用用户ID的视图中,用户ID用于计算唯一用户


参考您的应用程序,您可以发送唯一的
设备id
值来代替客户端id的随机值。这将解决您的所有问题,并确保客户端id与所有点击一起发送,否则它将不会在GA中注册

谢谢您的回答。我发现自己是个白痴,只是没有看到用户支持的视图,因此没有看到任何点击。因此,我使用它的方式实际上是有效的,我只是不知道它。关于设备ID,我的印象是,除非用户能够重置他们的设备ID,否则不会建议这样做,因为这可能构成(至少是)谷歌的PII。无论如何,我会接受你的回答,因为你指出,启用用户的视图是与用户ID一起工作的,而用户ID正是我所需要的信息。设备ID可以作为客户端ID发送,但你总是可以散列它。乐于助人:)