差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 上一修订版 两侧同时换到之后的修订记录 | ||
start:200androidcleintintegration:70groupchat [2016/08/24 03:45] liulij |
start:200androidcleintintegration:70groupchat [2018/11/06 11:35] jk 移除 |
||
---|---|---|---|
行 15: | 行 15: | ||
私有群,不能被搜索到,只能通过群主加人进群,或者设置了 allowInvite 为 true,即允许群成员邀请,那么群成员也可以邀请群外面的人进入群聊,此种群群成员可以邀请,不能踢人,类似微信群。 | 私有群,不能被搜索到,只能通过群主加人进群,或者设置了 allowInvite 为 true,即允许群成员邀请,那么群成员也可以邀请群外面的人进入群聊,此种群群成员可以邀请,不能踢人,类似微信群。 | ||
- | <sxh java> | + | <code java> |
//groupName:要创建的群聊的名称 | //groupName:要创建的群聊的名称 | ||
//desc:群聊简介 | //desc:群聊简介 | ||
行 24: | 行 24: | ||
//前一种方法创建的群聊默认最大群聊用户数为200,传入maxUsers后设置自定义的最大用户数,最大为2000 | //前一种方法创建的群聊默认最大群聊用户数为200,传入maxUsers后设置自定义的最大用户数,最大为2000 | ||
EMGroupManager.getInstance().createPrivateGroup(groupName, desc, members,allowInvite,maxUsers);//需异步处理 | EMGroupManager.getInstance().createPrivateGroup(groupName, desc, members,allowInvite,maxUsers);//需异步处理 | ||
- | </sxh> | + | </code> |
==== 创建公开群 ==== | ==== 创建公开群 ==== | ||
行 30: | 行 30: | ||
公开群可以被用户搜索到,并且可以直接加入或者申请加入。 | 公开群可以被用户搜索到,并且可以直接加入或者申请加入。 | ||
- | <sxh java> | + | <code java> |
//前面三个参数和创建私有群一致 | //前面三个参数和创建私有群一致 | ||
//needApprovalRequired: 如果创建的公开群用需要户自由加入,就传false。否则需要申请,等群主批准后才能加入,传true | //needApprovalRequired: 如果创建的公开群用需要户自由加入,就传false。否则需要申请,等群主批准后才能加入,传true | ||
行 37: | 行 37: | ||
//前一种方法创建的群聊默认最大群聊用户数为200,传入maxUsers后设置自定义的最大用户数,最大可以设为2000 | //前一种方法创建的群聊默认最大群聊用户数为200,传入maxUsers后设置自定义的最大用户数,最大可以设为2000 | ||
EMGroupManager.getInstance().createPublicGroup(groupName, desc, members, needApprovalRequired,maxUsers);//需异步处理 | EMGroupManager.getInstance().createPublicGroup(groupName, desc, members, needApprovalRequired,maxUsers);//需异步处理 | ||
- | </sxh> | + | </code> |
===== 群聊加人 ===== | ===== 群聊加人 ===== | ||
- | <sxh java> | + | <code java> |
//群主加人调用此方法 | //群主加人调用此方法 | ||
EMGroupManager.getInstance().addUsersToGroup(groupId, newmembers);//需异步处理 | EMGroupManager.getInstance().addUsersToGroup(groupId, newmembers);//需异步处理 | ||
//私有群里,如果开放了群成员邀请,群成员邀请调用下面方法 | //私有群里,如果开放了群成员邀请,群成员邀请调用下面方法 | ||
EMGroupManager.getInstance().inviteUser(groupId, newmembers, null);//需异步处理 | EMGroupManager.getInstance().inviteUser(groupId, newmembers, null);//需异步处理 | ||
- | </sxh> | + | </code> |
===== 群聊减人 ===== | ===== 群聊减人 ===== | ||
- | <sxh java> | + | <code java> |
//把username从群聊里删除 | //把username从群聊里删除 | ||
EMGroupManager.getInstance().removeUserFromGroup(groupId, username);//需异步处理 | EMGroupManager.getInstance().removeUserFromGroup(groupId, username);//需异步处理 | ||
- | </sxh> | + | </code> |
行 62: | 行 62: | ||
只能用于加入公开群。 | 只能用于加入公开群。 | ||
- | <sxh java> | + | <code java> |
//如果群开群是自由加入的,即group.isMembersOnly()为false,直接join | //如果群开群是自由加入的,即group.isMembersOnly()为false,直接join | ||
EMGroupManager.getInstance().joinGroup(groupid);//需异步处理 | EMGroupManager.getInstance().joinGroup(groupid);//需异步处理 | ||
//需要申请和验证才能加入的,即group.isMembersOnly()为true,调用下面方法 | //需要申请和验证才能加入的,即group.isMembersOnly()为true,调用下面方法 | ||
EMGroupManager.getInstance().applyJoinToGroup(groupid, "求加入");//需异步处理 | EMGroupManager.getInstance().applyJoinToGroup(groupid, "求加入");//需异步处理 | ||
- | </sxh> | + | </code> |
===== 退出群聊 ===== | ===== 退出群聊 ===== | ||
- | <sxh java> | + | <code java> |
EMGroupManager.getInstance().exitFromGroup(groupId);//需异步处理 | EMGroupManager.getInstance().exitFromGroup(groupId);//需异步处理 | ||
- | </sxh> | + | </code> |
===== 解散群聊 ===== | ===== 解散群聊 ===== | ||
- | <sxh java> | + | <code java> |
EMGroupManager.getInstance().exitAndDeleteGroup(groupId);//需异步处理 | EMGroupManager.getInstance().exitAndDeleteGroup(groupId);//需异步处理 | ||
- | </sxh> | + | </code> |
===== 获取群聊列表 ===== | ===== 获取群聊列表 ===== | ||
- | <sxh java> | + | <code java> |
//从服务器获取自己加入的和创建的群聊列表(两种方式),此API获取的群组SDK会自动保存到内存和db。 | //从服务器获取自己加入的和创建的群聊列表(两种方式),此API获取的群组SDK会自动保存到内存和db。 | ||
//注意,获取到的列表里的群聊只有groupname和groupid等简单配置信息 | //注意,获取到的列表里的群聊只有groupname和groupid等简单配置信息 | ||
行 124: | 行 124: | ||
} | } | ||
}); | }); | ||
- | </sxh> | + | </code> |
===== 修改群组名称 ===== | ===== 修改群组名称 ===== | ||
- | <sxh java> | + | <code java> |
//groupId 需要改变名称的群组的id | //groupId 需要改变名称的群组的id | ||
//changedGroupName 改变后的群组名称 | //changedGroupName 改变后的群组名称 | ||
EMGroupManager.getInstance().changeGroupName(groupId,changedGroupName);//需异步处理 | EMGroupManager.getInstance().changeGroupName(groupId,changedGroupName);//需异步处理 | ||
- | </sxh> | + | </code> |
行 140: | 行 140: | ||
==== 获取单个群聊信息 ==== | ==== 获取单个群聊信息 ==== | ||
- | <sxh java> | + | <code java> |
//根据群聊ID从本地获取群聊基本信息 | //根据群聊ID从本地获取群聊基本信息 | ||
EMGroup group = EMGroupManager.getInstance().getGroup(groupId); | EMGroup group = EMGroupManager.getInstance().getGroup(groupId); | ||
行 150: | 行 150: | ||
group.getOwner();//获取群主 | group.getOwner();//获取群主 | ||
... | ... | ||
- | </sxh> | + | </code> |
行 157: | 行 157: | ||
==== 屏蔽群消息 ==== | ==== 屏蔽群消息 ==== | ||
- | <sxh java> | + | <code java> |
/** | /** | ||
* 屏蔽群消息后,就不能接收到此群的消息 (群创建者不能屏蔽群消息)(还是群里面的成员,但不再接收消息) | * 屏蔽群消息后,就不能接收到此群的消息 (群创建者不能屏蔽群消息)(还是群里面的成员,但不再接收消息) | ||
行 164: | 行 164: | ||
*/ | */ | ||
EMGroupManager.getInstance().blockGroupMessage(groupId);//需异步处理 | EMGroupManager.getInstance().blockGroupMessage(groupId);//需异步处理 | ||
- | </sxh> | + | </code> |
==== 解除屏蔽群 ==== | ==== 解除屏蔽群 ==== | ||
- | <sxh java> | + | <code java> |
/** | /** | ||
* 取消屏蔽群消息,就可以正常收到群的所有消息 | * 取消屏蔽群消息,就可以正常收到群的所有消息 | ||
行 176: | 行 176: | ||
*/ | */ | ||
EMGroupManager.getInstance().unblockGroupMessage(groupId);//需异步处理 | EMGroupManager.getInstance().unblockGroupMessage(groupId);//需异步处理 | ||
- | </sxh> | + | </code> |
行 182: | 行 182: | ||
==== 群聊不提醒只显示数目 ==== | ==== 群聊不提醒只显示数目 ==== | ||
- | <sxh java> | + | <code java> |
//如果群聊只是想提示数目,不响铃。可以通过此属性设置,此属性是本地属性 | //如果群聊只是想提示数目,不响铃。可以通过此属性设置,此属性是本地属性 | ||
EMChatManager.getInstance().getChatOptions().setReceiveNotNoifyGroup(List<String>) | EMChatManager.getInstance().getChatOptions().setReceiveNotNoifyGroup(List<String>) | ||
- | </sxh> | + | </code> |
===== 群组的黑名单 ===== | ===== 群组的黑名单 ===== | ||
行 191: | 行 191: | ||
==== 将群成员拉入群组的黑名单 ==== | ==== 将群成员拉入群组的黑名单 ==== | ||
- | <sxh java> | + | <code java> |
/** | /** | ||
* 将用户加到群组的黑名单,被加入黑名单的用户无法加入群,无法收发此群的消息 | * 将用户加到群组的黑名单,被加入黑名单的用户无法加入群,无法收发此群的消息 | ||
行 200: | 行 200: | ||
*/ | */ | ||
EMGroupManager.getInstance().blockUser(groupId, username);//需异步处理 | EMGroupManager.getInstance().blockUser(groupId, username);//需异步处理 | ||
- | </sxh> | + | </code> |
==== 将拉入黑名单的群成员移除 ==== | ==== 将拉入黑名单的群成员移除 ==== | ||
- | <sxh java> | + | <code java> |
/** | /** | ||
* 将用户从群组的黑名单移除(只有群主才能调用此函数) | * 将用户从群组的黑名单移除(只有群主才能调用此函数) | ||
行 212: | 行 212: | ||
*/ | */ | ||
EMGroupManager.getInstance().unblockUser(groupId, username);//需异步处理 | EMGroupManager.getInstance().unblockUser(groupId, username);//需异步处理 | ||
- | </sxh> | + | </code> |
==== 获取群组的黑名单用户列表 ==== | ==== 获取群组的黑名单用户列表 ==== | ||
- | <sxh java> | + | <code java> |
/** | /** | ||
* 获取群组的黑名单用户列表 | * 获取群组的黑名单用户列表 | ||
行 225: | 行 225: | ||
*/ | */ | ||
EMGroupManager.getInstance().getBlockedUsers(groupId);//需异步处理 | EMGroupManager.getInstance().getBlockedUsers(groupId);//需异步处理 | ||
- | </sxh> | + | </code> |
===== 群聊事件监听 ===== | ===== 群聊事件监听 ===== | ||
- | <sxh java> | + | <code java> |
EMGroupManager.getInstance().addGroupChangeListener(new GroupChangeListener() { | EMGroupManager.getInstance().addGroupChangeListener(new GroupChangeListener() { | ||
@Override | @Override | ||
行 265: | 行 265: | ||
} | } | ||
}); | }); | ||
- | </sxh> | + | </code> |