差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版 两侧同时换到之后的修订记录
im:android:basics:multiuserconference [2020/02/07 07:55]
huanxinfudh [产品简介]
im:android:basics:multiuserconference [2020/02/08 03:33]
zhaoliang [互动视频会议]
行 348: 行 348:
  2. 创建者createAndJoin后的角色是Admin,其他成员第一次调用接口''​EMConferenceManager#​joinConference(String confId, String password, EMValueCallBack<​EMConference>​ callback)''​加入直播后的权限是观众Audience,Audience只能订阅数据流  2. 创建者createAndJoin后的角色是Admin,其他成员第一次调用接口''​EMConferenceManager#​joinConference(String confId, String password, EMValueCallBack<​EMConference>​ callback)''​加入直播后的权限是观众Audience,Audience只能订阅数据流
    
- 3. 观众Audience如果想发布数据流 即上麦,需要给管理员发申请。SDK没有提供申请接口,可以自定义+ 3. 观众Audience如果想发布数据流 即上麦,需要给管理员发申请。SDK没有提供申请接口,可以通过IM消息申请,也可以通过其他通道己实现。我们的demo的LiveActivity中有通过IM消息通道申请的示例,可以参考 
 + 
 +<code java> 
 +sendRequestMessage(content,​ inviter, Constant.OP_REQUEST_TOBE_SPEAKER);​ 
 +</​code>​ 
    
  ​管理员如果同意Audience上麦,需要调用接口''​EMConferenceManager#​grantRole(String confId, EMConferenceMember member, EMConferenceRole toRole, EMValueCallBack<​String>​ callback)''​将角色Audience更改为Speaker  ​管理员如果同意Audience上麦,需要调用接口''​EMConferenceManager#​grantRole(String confId, EMConferenceMember member, EMConferenceRole toRole, EMValueCallBack<​String>​ callback)''​将角色Audience更改为Speaker
行 365: 行 370:
                 EMLog.i(TAG,​ "​changeRole failed, error: " + error + " - " + errorMsg);                 EMLog.i(TAG,​ "​changeRole failed, error: " + error + " - " + errorMsg);
             }             }
-        ​});+});
 </​code>​ </​code>​
            
 成员角色改变后,被改变的成员会在接口''​EMConferenceManager#​onRoleChanged(EMConferenceManager.EMConferenceRole role)''​中收到回调 成员角色改变后,被改变的成员会在接口''​EMConferenceManager#​onRoleChanged(EMConferenceManager.EMConferenceRole role)''​中收到回调
  
-    @Override + 
-    public void onRoleChanged(EMConferenceManager.EMConferenceRole role) { +<code java> 
-        EMLog.i(TAG,​ "​onRoleChanged,​ role: " + role); +public void onRoleChanged(EMConferenceManager.EMConferenceRole role) { 
-        currentRole = role; +    EMLog.i(TAG,​ "​onRoleChanged,​ role: " + role); 
-    ​ +    currentRole = role; 
-        ​if (role == EMConferenceManager.EMConferenceRole.Talker) { + 
-            // 管理员把当前用户角色更改为主播,​可以进行publish本地流等操作 +    if (role == EMConferenceManager.EMConferenceRole.Talker) { 
-        } else if (role == EMConferenceManager.EMConferenceRole.Audience) { +        // 管理员把当前用户角色更改为主播,​可以进行publish本地流等操作 
-            // 管理员把当前用户角色改变为观众 +    } else if (role == EMConferenceManager.EMConferenceRole.Audience) { 
-        }+        // 管理员把当前用户角色改变为观众
     }     }
 +}
 +</​code>​
    
 4. 角色从Audience变为Speaker,成员就可以发布数据流了 4. 角色从Audience变为Speaker,成员就可以发布数据流了