声网流媒体加速 SDK 支持使用 String 型的用户 ID 作为用户标识进行初始化。
为保证传输质量,建议同一频道内的所有用户使用同一数据类型的用户标识,即一个频道内的所有用户要么都使用 Int 型的用户 ID,要么的都使用 String 型的用户 ID,两者不要混用。
调用 agora_rtc_init
(C API)方法或 init
(Java API)方法初始化声网流媒体加速服务。将 option
(C API)参数或 options
(Java API)参数中的 use_string_uid
(C API)或 useStringUid
(Java API) 设为 true
。
C 示例代码
// C
rtc_service_option_t service_opt;
memset(&service_opt, 0, sizeof(service_opt));
// 设置开启 String 型用户 ID
service_opt.use_string_uid = true;
rval = agora_rtc_init(p_appid, &event_handler, &service_opt);
Java 示例代码
// Java
RtcServiceOptions options = new RtcServiceOptions();
// 设置开启 String 型用户 ID
options.useStringUid = true;
MyRtcEvent rtcEvent = new MyRtcEvent();
int ret = mRtcService.init(APPID, rtcEvent, options);
调用 agora_rtc_join_channel
(C API)方法或 joinChannel
(Java API) 方法并使用 String 型 UID 加入频道。
C 示例代码
// C
// 使用 String 型 UID 加入频道
const char *uid = "agora_uid_01";
agora_rtc_join_channel("YOUR_CHANNEL_NAME", uid, str_token, str_token_len);
Java 示例代码
// java
// 使用 String 型 UID 加入频道
ret = mRtcService.joinChannel("YOUR_CHANNEL_NAME", "agora_uid_01", null, chnlOption);