iOS | Android | Mac OS | Windows | Electron | Web 端 | Flutter |
✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
位数 | 二进制表示 | 十进制数字 | 权限含义 |
第 1 位 | 0000 0001 | 1 | 创建房间的权限 |
第 2 位 | 0000 0010 | 2 | 进入房间的权限 |
第 3 位 | 0000 0100 | 4 | 发送语音的权限 |
第 4 位 | 0000 1000 | 8 | 接收语音的权限 |
第 5 位 | 0001 0000 | 16 | 发送视频的权限 |
第 6 位 | 0010 0000 | 32 | 接收视频的权限 |
第 7 位 | 0100 0000 | 64 | 发送辅路(也就是屏幕分享)视频的权限 |
第 8 位 | 1000 0000 | 128 | 接收辅路(也就是屏幕分享)视频的权限 |
privateMapKey
参数才能成功进房(如 步骤 2 所述),如果您线上有使用此 SDKAppid 的用户,请不要轻易开启此功能。语言版本 | 关键函数 | 下载链接 |
Java | genPrivateMapKey 和 genPrivateMapKeyWithStringRoomID | |
GO | GenPrivateMapKey 和 GenPrivateMapKeyWithStringRoomID | |
PHP | genPrivateMapKey 和 genPrivateMapKeyWithStringRoomID | |
Node.js | genPrivateMapKey 和 genPrivateMapKeyWithStringRoomID | |
Python | genPrivateMapKey 和 genPrivateMapKeyWithStringRoomID | |
C# | genPrivateMapKey 和 genPrivateMapKeyWithStringRoomID | |
C++ | genPrivateMapKey 和 genPrivateMapKeyWithStringRoomID |
TRTCParams
中携带的 PrivateMapKey,如果您将 PrivateMapKey 的有效期设置得比较短,例如“5分钟”,就会很容易触发校验失败进而导致用户被踢出房间。switchRole
将自己的身份切换成主播之前,重新向您的服务器申请一个 privateMapKey,并调用 SDK 的实验性接口 updatePrivateMapKey
将其更新到 SDK 中,示例代码如下:JSONObject jsonObject = new JSONObject();try {jsonObject.put("api", "updatePrivateMapKey");JSONObject params = new JSONObject();params.put("privateMapKey", "xxxxx"); // 填写新的 privateMapKeyjsonObject.put("params", params);mTRTCCloud.callExperimentalAPI(jsonObject.toString());} catch (JSONException e) {e.printStackTrace();}
NSMutableDictionary *params = [[NSMutableDictionary alloc] init];[params setObject:@"xxxxx" forKey:@"privateMapKey"]; // 填写新的 privateMapKeyNSDictionary *dic = @{@"api": @"updatePrivateMapKey", @"params": params};NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dic options:0 error:NULL];NSString *jsonStr = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];[WXTRTCCloud sharedInstance] callExperimentalAPI:jsonStr];
std::string api = "{\\"api\\":\\"updatePrivateMapKey\\",\\"params\\":{\\"privateMapKey\\":"xxxxx"}}";TRTCCloudCore::GetInstance()->getTRTCCloud()->callExperimentalAPI(api.c_str());
std::string api = "{\\"api\\":\\"updatePrivateMapKey\\",\\"params\\":{\\"privateMapKey\\":"xxxxx"}}";mTRTCCloud.callExperimentalAPI(api);
TRTCParams
中设置 privateMapKey 才能进入,所以如果您线上业务正在运营中,并且线上版本并没有加入 privateMapKey 的相关逻辑,请不要开启此开关。
本页内容是否解决了您的问题?