帮助中心
- 平台介绍
- 接入指引
- 版本信息
- 使用流程
- 功能手册
- 操作视频
- 技术文档
- 基础知识
- 客户端SDK
- 服务端SDK
- 数据导入
- API功能
- SQL手册
- DML
- SQL函数
- 日期函数
- convert_tz
- curdate,current_date
- current_timestamp
- curtime,current_time
- date_add
- date_format
- date_sub
- datediff
- day
- dayname
- dayofmonth
- dayofweek
- dayofyear
- from_days
- from_unixtime
- hour
- makedate
- minute
- month
- monthname
- now
- second
- str_to_date
- time_round
- timediff
- timestampadd
- timestampdiff
- to_date
- to_days
- unix_timestamp
- utc_timestamp
- week
- weekday
- weekofyear
- year
- yearweek
- localtime,localtimestamp
- quarter
- last_day
- extract
- date_trunc
- minutes_add
- minutes_diff
- minutes_sub
- seconds_add
- seconds_diff
- seconds_sub
- hours_add
- hours_diff
- hours_sub
- days_add
- days_diff
- days_sub
- weeks_add
- weeks_diff
- weeks_sub
- months_add
- months_diff
- months_sub
- years_add
- years_diff
- years_sub
- 字符串函数
- append_trailing_char_if_absent
- to_base64
- from_base64
- ascii
- length
- bit_length
- char_length
- lpad
- rpad
- lower
- lcase
- upper
- ucase
- initcap
- repeat
- reverse
- char
- concat
- concat_ws
- substr
- substring
- sub_replace
- ends_with
- starts_with
- trim
- ltrim
- rtrim
- null_or_empty
- not_null_or_empty
- hex
- unhex
- elt
- instr
- locate
- find_in_set
- replace
- left
- right
- strleft
- strright
- split_part
- split_by_string
- substring_index
- money_format
- parse_url
- convert_to
- extract_url_parameter
- uuid
- space
- sleep
- 日期函数
- 数据类型
- 数据管理
- 常见问题
- 合规说明
- 资源下载
- AB测试
SDK接入
帮助中心 > 技术文档 > 服务端SDK > C# SDK > SDK接入
C# SDK接入流程主要分为两个步骤(两个文档):
1、SDK配置:将对应的SDK集成到您的产品项目中,然后进行初始化代码处理;
2、SDK接入:将需要上报的业务数据,按照SDK中对应的的方法进行数据上送。
1. 发送事件示例
//url配置采集上报地址URL(在线申请),获取步骤请查看如下【[采集上报地址获取] 链接
string url = "数据接收地址";
//1.初始化
HinaSdk hinaSdk = HinaSdk.Init(url, 1, true);
//2.注册全局属性
Dictionary<string, object> map1 = new Dictionary<string, object>();
map1.Add("H_os", "macos");
map1.Add("H_ip", "10.0.70.123");
hinaSdk.RegisterSuperProperties(map1);
//3.发送事件,未登录
string anonymousId = Guid.NewGuid().ToString();
Dictionary<string, object> map2 = new Dictionary<string, object>();
map2.Add("cat_name", "zhaoshang123");
map2.Add("pay_type", "online888");
map2.Add("pay_money", 25888);
long time1 = DateUtil.GetTimeStamp();
hinaSdk.SendEvent(anonymousId, "dotnet_test_event", map2, false, time1);
//4.登录后,发送事件
//4.1 登录
string accountId = "1220991856778869";
hinaSdk.BindId(accountId, anonymousId);
//4.2 登录后发送事件
Dictionary<string, object> map3 = new Dictionary<string, object>();
map3.Add("cat_name", "zhaoshang124");
map3.Add("pay_type", "online889");
map3.Add("pay_money", 25889);
long time2 = DateUtil.GetTimeStamp();
hinaSdk.SendEvent(accountId, "dotnet_test_event", map3, true, time2);
注意:
1、“数据接收地址”获取方式,请参考【采集上报地址获取】
2、方法参数,详见【SDK接入】
2. 设置用户ID
SDK 实例登录前使用匿名ID发送事件,登录后使用登录后ID发送事件,用户登录后,可以将登录ID和匿名ID绑定
hinaSdk.BindId("登录ID","匿名ID")
参数解释:
参数 | 默认值 | 说明 |
---|---|---|
userUId | string | 登录ID |
anonymousId | string | 匿名ID |
3. 设置用户属性
3.1 设置用户属性
直接设置用户的属性,如果存在则覆盖
hinaSdk.UserSet("用户ID",用户属性)
参数解释:
参数 | 默认值 | 说明 |
---|---|---|
userUid | string | 用户ID |
data | Dictionary<string, object> | 用户属性 |
样例:
// 设置用户属性
Dictionary<string, object> map = new Dictionary<string, object>();
map.Add("name", "zhangsan");
map.Add("age", 20);
map.Add("sex", "male");
hinaSdk.UserSet(ACCOUNT_ID, map);
3.2 固定初始值的属性
如果不存在则设置,存在就不设置
hinaSdk.UserSetOnce("用户ID", 用户属性);
参数解释:
参数 | 默认值 | 说明 |
---|---|---|
userUid | String | 您平台用户唯一标识 |
data | Dictionary<string, object> | 用户属性 |
样例:
Dictionary<string, object> map = new Dictionary<string, object>();
map.Add("name", "cheyt");
map.Add("age", 18);
map.Add("sex", "male");
hinaSdk.UserSetOnce(ACCOUNT_ID, map);
3.3 数值类型的属性
对当前用户的属性做递增或者递减
hinaSdk.UserAdd("用户ID", key, value)
参数解释:
参数 | 默认值 | 说明 |
---|---|---|
userUid | String | 您平台用户唯一标识 |
key | String | 属性KEY |
value | Number | 属性值,数值型 |
样例:
hinaSdk.UserAdd(ACCOUNT_ID, "age",1);
3.4 属性取消
删除当前用户的一些属性
hinaSdk.UserUnset("用户ID",key)
参数解释:
参数 | 默认值 | 说明 |
---|---|---|
userUid | String | 您平台用户唯一标识 |
key | String | 键值 |
样例:
hinaSdk.UserUnset(ACCOUNT_ID, "sex");
4 设置公共事件属性
对于所有事件都需要添加的属性,可在初始化 SDK 后,调用 RegisterCommonProperties
将属性注册为公共属性
hinaSdk.RegisterSuperProperties(data);
参数解释:
参数 | 默认值 | 说明 |
---|---|---|
data | Dictionary<string, object> | 属性值集合 |
样例:
Dictionary<string, object> map1 = new Dictionary<string, object>();
map1.Add("H_os", "macos");
map1.Add("H_ip", "10.0.70.123");
map1.Add("tuze_test_version", "tu_12399");
map1.Add("H_timezone_offset", "-480");
hinaSdk.RegisterSuperProperties(map1);
5. 发送事件
在 SDK 初始化完成之后,您就可以进行数据埋点,收集用户的的行为信息,可以调用 SendEvent
来上传事件,以下是示例
hinaSdk.SendEvent(userUid, "事件名称", map, true, time);
参数解释:
参数 | 默认值 | 说明 |
---|---|---|
userUid | String | 您平台用户唯一标识 |
eventName | String | 事件名称 |
data | Dictionary<string, object> | 事件数据 |
isLogin | boolean | 是否登录 |
time | long | 时间戳 |
样例:
Dictionary<string, object> map = new Dictionary<string, object>();
map.Add("cat_name", "zhaoshang123");
map.Add("pay_type", "online888");
long time1 = DateUtil.GetTimeStamp();
hinaSdk.SendEvent(anonymous_id, "dotnet_test_event", map, false, time1);
作者:陈云涛 创建时间:2023-11-13 10:06
最后编辑:陈云涛 更新时间:2024-09-05 21:06
最后编辑:陈云涛 更新时间:2024-09-05 21:06