差别

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

到此差别页面的链接

两侧同时换到之前的修订记录 前一修订版
后一修订版
前一修订版
后一修订版 两侧同时换到之后的修订记录
im:android:basics:group [2019/12/20 10:42]
huanxinfudh [群组管理]
im:android:basics:group [2020/08/20 03:26]
huanxinfudh [将群成员加入禁言列表中]
行 6: 行 6:
 SDK3.3.0 release新增许多群组操作的API,请查看链接[[im:​200androidclientintegration:​3.3.0apichange|3.3.0api修改]] SDK3.3.0 release新增许多群组操作的API,请查看链接[[im:​200androidclientintegration:​3.3.0apichange|3.3.0api修改]]
  
-**注意**:‘’群主+管理员 一起一共不超过100个,也就是不超过99个管理员‘’+**注意**:''​1、群主+管理员 一起一共不超过100个,也就是不超过99个管理员。2、群组成员最大数(包括群主),默认值200,最大值2000。''​
 ---- ----
 ===== 收发消息 ===== ===== 收发消息 =====
行 21: 行 21:
  * @param allMembers 群组初始成员,如果只有自己传空数组即可  * @param allMembers 群组初始成员,如果只有自己传空数组即可
  * @param reason 邀请成员加入的reason  * @param reason 邀请成员加入的reason
- * @param option 群组类型选项,可以设置群组最大用户数(默认200)及群组类型@see {@link EMGroupStyle}+ * @param option 群组类型选项,可以设置群组最大用户数(默认200,最大值2000)及群组类型@see {@link EMGroupStyle}
  ​* ​              ​option.inviteNeedConfirm表示邀请对方进群是否需要对方同意,默认是需要用户同意才能加群的。  ​* ​              ​option.inviteNeedConfirm表示邀请对方进群是否需要对方同意,默认是需要用户同意才能加群的。
  ​* ​              ​option.extField创建群时可以为群组设定扩展字段,方便个性化订制。  ​* ​              ​option.extField创建群时可以为群组设定扩展字段,方便个性化订制。
行 171: 行 171:
 List<​String>​ members = group.getMembers();//​获取内存中的群成员 List<​String>​ members = group.getMembers();//​获取内存中的群成员
 List<​String>​ adminList = group.getAdminList();//​获取管理员列表 List<​String>​ adminList = group.getAdminList();//​获取管理员列表
 +boolean isMsgBlocked = group.isMsgBlocked();//​获取是否已屏蔽群组消息
 ... ...
 </​code>​ </​code>​
行 249: 行 250:
  */  */
 EMClient.getInstance().groupManager().muteGroupMembers(String groupId, List<​String>​ muteMembers,​ long duration);//​需异步处理 EMClient.getInstance().groupManager().muteGroupMembers(String groupId, List<​String>​ muteMembers,​ long duration);//​需异步处理
-目前duration参数不起作用,暂时只支持永久禁言和解除禁言两种操作,​ duration建议输入12*30*24*60*60*1000 
 </​code>​ </​code>​
  
行 264: 行 264:
 EMClient.getInstance().groupManager().unMuteGroupMembers(String groupId, List<​String>​ members);//​需异步处理 EMClient.getInstance().groupManager().unMuteGroupMembers(String groupId, List<​String>​ members);//​需异步处理
 </​code>​ </​code>​
 +
 +
  
 ==== 获取群成员禁言列表 ==== ==== 获取群成员禁言列表 ====
行 276: 行 278:
  */  */
 EMClient.getInstance().groupManager().fetchGroupMuteList(String groupId, int pageNum, int pageSize) EMClient.getInstance().groupManager().fetchGroupMuteList(String groupId, int pageNum, int pageSize)
 +</​code>​
 +
 +
 +==== 开启和关闭全员禁言 ====
 +owner和管理员可以开启和关闭全员禁言。
 +<code java>
 +     /**
 +     * \~chinese
 +     * 禁言所有成员
 +     * @param groupId 群组id
 +     */
 +    public void muteAllMembers(final String groupId, final EMValueCallBack<​EMGroup>​ callBack)
 +    ​
 +    /**
 +     * \~chinese
 +     * 解除所有成员禁言
 +     * @param groupId 群组id
 +     */
 +    public void unmuteAllMembers(final String groupId, final EMValueCallBack<​EMGroup>​ callBack)
 +</​code>​
 +==== 白名单管理 ====
 +可以将用户添加到白名单中,用户白名单在管理员开启了全员禁言时生效,可以运行白名单用户发出消息。
 +另外可以将用户移出白名单,检查自己是否在白名单中以及获取白名单列表。
 +<code java>
 +         /**
 + * \~chinese
 + * 添加用户到白名单
 + * @param groupId 群组id
 + * @param members 成员id列表
 + */
 + public void addToGroupWhiteList(final String groupId, final List<​String>​ members, final EMCallBack callBack)
 +
 +        /**
 + * \~chinese
 + * 将用户从白名单移除
 + * @param groupId 群组id
 + * @param members 成员id列表
 + */
 + public void removeFromGroupWhiteList(final String groupId, final List<​String>​ members, final EMCallBack callBack)
 +
 +        /**
 + * \~chinese
 + * 检查自己是否在白名单中
 + * @param groupId 群组id
 + */
 + public void checkIfInGroupWhiteList(final String groupId, EMValueCallBack<​Boolean>​ callBack)
 +
 +        /**
 + * \~chinese
 + * 从服务器获取白名单成员列表
 + * @param groupId 群组id
 + */
 + public void fetchGroupWhiteList(final String groupId, final EMValueCallBack<​List<​String>>​ callBack) ​
 </​code>​ </​code>​
  
行 410: 行 465:
     public void onMuteListRemoved(String groupId, final List<​String>​ mutes) {     public void onMuteListRemoved(String groupId, final List<​String>​ mutes) {
  //​成员从禁言列表里移除通知  //​成员从禁言列表里移除通知
 +    }
 +    ​
 +    @Override
 +    public void onWhiteListAdded(String groupId, List<​String>​ whitelist) {
 +          //​成员被加到白名单中
 +    }
 +
 +    @Override
 +    public void onWhiteListRemoved(String groupId, List<​String>​ whitelist) {
 +         //​成员从白名单中被移除
 +    }
 +
 +    @Override
 +    public void onAllMemberMuteStateChanged(String groupId, boolean isMuted) {
 +          //​全员禁言是否开启
     }     }