Android SDK - 设置用户 ID

文档

设置用户 ID

向 Singular 发送内部用户 ID,以实现跨设备跟踪和用户级数据报告。

注:如果使用Singular 的跨设备解决方案,则必须在所有平台上收集用户 ID。

用户ID要求

隐私和最佳实践

在实施用户 ID 跟踪时,请遵循以下准则,以确保隐私合规和正确的跨设备测量。

  • 无 PII:用户 ID 不应暴露个人身份信息 (PII),如电子邮件地址、用户名或电话号码。 使用对第一方数据唯一的散列值。
  • 跨平台一致性:用户 ID 值必须是您在所有平台(网络/移动/PC/控制台/离线)上获取的相同内部标识符,以便进行准确的跨设备测量。
  • 第一方数据:Singular会在用户级导出、ETL和内部商业智能回传(如有配置)中包含用户ID。用户 ID 是第一方数据,不会与第三方共享。
  • 持久性:用户 ID 会一直存在,直到使用unsetCustomUserId() 明确取消设置或卸载应用程序。关闭或重启应用程序不会清除用户 ID。

实施概述

何时设置用户 ID

使用setCustomUserId() 设置用户标识符,使用unsetCustomUserId() 注销时清除用户标识符。

最佳实践:如果多个用户共用一台设备,请执行注销流程,登录时调用setCustomUserId(),注销时调用unsetCustomUserId()

如果在应用程序打开时已经知道用户 ID,请在初始化 Singular SDK 之前调用setCustomUserId() 。这样可以确保 Singular 从第一次会话中接收到用户 ID。不过,在用户注册或登录之前,用户 ID 通常是不可用的,在这种情况下,请在注册或身份验证流程完成后调用setCustomUserId()


SDK 方法

设置自定义用户 ID

向 Singular 发送内部用户 ID,用于跨设备跟踪和用户级报告。

KotlinJava
// Set the user ID after login or registration
Singular.setCustomUserId("custom_user_id")

方法签名

public void setCustomUserId(String customUserId)

取消设置自定义用户 ID

在用户注销时清除用户 ID,以确保多用户设备的准确会话跟踪。

KotlinJava
// Unset the user ID on logout
Singular.unsetCustomUserId()

方法签名

public void unsetCustomUserId()

高级功能

自定义用户 ID 设备映射

将用户 ID 映射到 Singular 移动设备跟踪标识符,用于服务器到服务器集成。

重要:此高级企业功能仅在特殊情况下可用。实施前请咨询 Singular 解决方案工程师。

Singular 可以通过服务器到服务器集成接收额外的移动事件跟踪数据。要使用此功能,必须将用户 ID 映射到 Singular 的移动设备跟踪标识符。

注意:在初始化 Singular SDK 或获得用户 ID 后,请尽快调用此方法。

执行

使用setDeviceCustomUserId() 设置自定义用户 ID,并将其映射到 Singular 的跟踪标识符。

KotlinJava
// Map user ID to device identifier for S2S integration
Singular.setDeviceCustomUserId("custom_user_id")

方法签名

public void setDeviceCustomUserId(String customUserId)

描述:设置自定义用户 ID(与登录相同),并将其映射到 Singular 的跟踪标识符,用于服务器之间的事件归属。