本文档详细介绍了SDK提供的用户属性上报功能,帮助开发者高效地收集、更新和维护用户画像数据。
通过本功能,您可以:
- 全面记录用户特征:存储用户基础信息(如昵称、性别)、行为偏好等关键数据
- 灵活更新用户画像:支持覆盖、追加、数值计算等多种更新方式
- 构建精准用户模型:通过属性组合分析,实现用户分群和个性化服务
目前支持的用户属性设置接口为 user_set
、user_setOnce
、user_increment
、user_max
、user_min
、user_append
、user_uniqAppend
、user_unset
、user_delete
。
设置用户属性
对于一般的用户属性,您可以调用 userSet
来进行设置,使用该接口上传的属性将会覆盖原有的属性值,如果之前不存在该用户属性,则会新建该用户属性
//设置用户属性,会员等级
ge.userSet({ vip_level: "钻石会员" });
属性格式要求与事件属性保持一致。
初始化用户属性
如果您要上传的用户属性只要设置一次,则可以调用 userSetOnce
来进行设置,当该属性之前已经有值的时候,将会忽略这条信息。
//以设置用户名为例,如果用户名已设置,则忽略本次设置,如果不存在,则设置为传入值
ge.userSetOnce({ user_name: "TestUser" });
属性格式要求与事件属性保持一致。
累加用户属性
当您要上传数值型的属性时,您可以调用 userAdd
来对该属性进行累加操作,如果该属性还未被设置,则会赋值 0 后再进行计算
//以付费为例,用户每次付费时调用此接口,则'total_revenue'字段每次会做累加付费金额的处理
ge.userAdd({ total_revenue: 50 });
设置的属性 key 为字符串,Value 只允许为数值。
重置用户属性
当您要清空用户的某个用户属性值时,您可以调用 userUnset
来对指定属性进行清空操作,如果该属性还未在集群中被创建,则 userUnset
不会创建该属性
//清空属性名为userPropertyKey的用户属性值该用户,即设置成NULL
ge.userUnset("userPropertyKey");
userUnset: 的传入值为被清空属性的 Key 值。
清空用户属性
如果您要删除某个用户,可以调用 userDel
将这名用户删除,您将无法再查询该名用户的用户属性,但该用户产生的事件仍然可以被查询到
ge.userDel();
用户属性追加(Array)
您可以调用 userAppend
对 Array (List) 类型的用户数据追加元素。
ge.userAppend({ Movies: ["Interstellar", "The Negro Motorist Green Book"] });
用户属性去重追加(Array)
userUniqAppend
用来对 Array (List) 类型的用户数据去重追加元素。
ge.userUniqAppend({
Movies: ["Interstellar", "The Negro Motorist Green Book"],
});
用户属性取最大值
userNumberMax
用来比较数值大小,保存较大的,如果没有这个 key,则新增 key,value 取本次的值
ge.userNumberMax({
ad_ecpm_max: 300,
});
用户属性取最小值
userNumberMin
用来比较数值大小,保存较小的,如果没有这个 key,则新增 key,value 取本次的值
ge.userNumberMin({
ad_ecpm_min: 17,
});