群组
获取群组列表
QDClient.getInstance().loadAllGroup()
创建群组
QDClient.getInstance().getGroupManager().createGroup(String name, Map<String, String> map, QDResultCallBack callBack)
获取群信息(成员信息)
QDClient.getInstance().getGroupManager().getGroupInfo(String groupId, QDResultCallBack<List<QDGroupMember>> callBack)
更新群名称
QDClient.getInstance().getGroupManager().updateGroupName(String groupId, String name, QDResultCallBack callBack)
更新群描述
QDClient.getInstance().getGroupManager().updateGroupDesc(String groupId, String desc, QDResultCallBack callBack)
更新群禁言
QDClient.getInstance().getGroupManager().updateGroupMute(String groupId, int mute, QDResultCallBack callBack)
修改群昵称
QDClient.getInstance().getGroupManager().updateGroupNickName(String groupId, String nickName, QDResultCallBack callBack)
修改成员是否禁言
QDClient.getInstance().getGroupManager().updateMemberMute(String groupId, String account, int isMute, QDResultCallBack callBack)
添加群成员
QDClient.getInstance().getGroupManager().addMember(String groupId, String member, QDResultCallBack callBack)
移除群成员
QDClient.getInstance().getGroupManager().removeMember(String groupId, String member, QDResultCallBack callBack)
设置/取消管理员
QDClient.getInstance().getGroupManager().changeManager(String groupId, int role, String manager, QDResultCallBack callBack)
转让群组
QDClient.getInstance().getGroupManager().setOwner(String groupId, String ownerAccount, QDResultCallBack callBack)
退出群组
QDClient.getInstance().getGroupManager().exitGroup(String groupId, QDResultCallBack callBack)
解散群组
* 解散群组
* @param groupId
* @param callBack
*/
QDClient.getInstance().getGroupManager().deleteGroup(String groupId, QDResultCallBack callBack)
搜索公开群
QDClient.getInstance().getGroupManager().searchGroup(String searchTxt, QDResultCallBack callBack)
申请加入群
QDClient.getInstance().getGroupManager().applyJoinGroup(String groupId, String reason, QDResultCallBack callBack)
处理群组申请
QDClient.getInstance().getGroupManager().dealInvite(String account, String groupId, int status, String reason, QDResultCallBack callBack)
获取禁言列表
/**
* 获取禁言列表
* @param groupId
* @param callBack
*/
QDClient.getInstance().getGroupManager().getMute(String groupId, QDResultCallBack<List<QDGroupMember>> callBack)
获取黑名单列表
/**
* 获取黑名单列表
* @param groupId
* @param callBack
*/
QDClient.getInstance().getGroupManager().getBlock(String groupId, QDResultCallBack<List<QDGroupMember>> callBack)
设置黑名单
QDClient.getInstance().getGroupManager().setBlock(String groupId, String account, QDResultCallBack callBack)
移除黑名单
QDClient.getInstance().getGroupManager().removeBlock(String groupId, String account, QDResultCallBack callBack)
获取群公告列表
QDClient.getInstance().getGroupManager().getNoticeList(String groupId, QDResultCallBack<List<QDGroupNotice>> callBack)
新增公告
QDClient.getInstance().getGroupManager().addNotice(String groupId, String content, QDResultCallBack callBack)
删除公告
/**
* 删除群公告
* @param groupId
* @param noticeId 公告id
* @param callBack
*/
QDClient.getInstance().getGroupManager().deleteNotice(String groupId, String noticeId, QDResultCallBack callBack)
获取共享文件列表
/**
* 获取群共享文件
* @param groupId
* @param callBack
*/
QDClient.getInstance().getGroupManager().getGroupFile(String groupId, QDResultCallBack<List<QDFileModel>> callBack)
删除共享文件
/**
* 删除群共享文件
* @param groupId
* @param fileId 文件id
* @param callBack
*/
QDClient.getInstance().getGroupManager().deleteGroupFile(String groupId, String fileId, QDResultCallBack callBack)
群组监听
QDGroupCallBackManager.getInstance().addCallBack(callBack);
关闭页面的时候最好调用:QDGroupCallBackManager.getInstance().removeCallBack(callBack);
QDGroupCallBack callBack = new QDGroupCallBack() {
@Override
public void memberRemoved(String groupId, List<String> memberAccountList) {
}
@Override
public void memberJoined(String groupId, List<QDGroupMember> memberList) {
}
@Override
public void managerChange(String groupId, String memberAccount, int role) {
}
@Override
public void ownerChange(String groupId, String newOwnerId) {
}
@Override
public void muteChange(String groupId, int mute) {
}
@Override
public void memberMuteChange(String groupId, List<String> accountList, int mute) {
}
@Override
public void updateNickName(String groupId, String account, String nickName) {
}
}
数据库操作
群组数据库
/**
* 插入群组信息
* @param group
*/
QDGroupDao.getInstance().insertGroup(QDGroup group)
/**
* 插入一组群组信息
* @param group
*/
QDGroupDao.getInstance().insertGroupList(List<QDGroup> groupList)
/**
* 获取所有群组信息
*/
List<QDGroup> groupList = QDGroupDao.getInstance().getAllGroup()
/**
* 根据群组id获取群组信息
* @param groupId
* @return
*/
QDGroup group = QDGroupDao.getInstance().getGroupById(String groupId)
/**
* 获取所有的群组id
* @param group
*/
List<String> idList = QDGroupDao.getInstance().getGroupIdList()
/**
* 删除多个群组
* @param ids
*/
QDGroupDao.getInstance().deleteGroup(String[] ids)
/**
* 根据id删除群组
* @param id
*/
QDGroupDao.getInstance().deleteGroup(String id)
/**
* 搜索群组
* @param searchTxt 关键字
*/
List<QDGroup> groupList = QDGroupDao.getInstance().searchGroup(String searchTxt)
群成员数据库
/**
* 插入成员信息
* @param member
*/
QDGroupMemberDao.getInstance().insertMember(QDGroupMember member)
/**
* 插入一组成员信息
* @param member
*/
QDGroupMemberDao.getInstance().insertMemberList(List<QDGroupMember> memberList)
/**
* 根据群组id和成员账号获取成员信息
* @param groupId
* @param account 成员账号
*/
QDGroupMember member = QDGroupMemberDao.getInstance().getMemberByGroupIdAndAccount(String groupId, String account)
/**
* 根据群组id获取群成员列表
* @param groupId
*/
List<QDGroupMember> memberList = QDGroupMemberDao.getInstance().getMembersByGroupId(String groupId)
/**
* 删除群成员
* @param groupId
* @param memberAccount
*/
QDGroupMemberDao.getInstance().deleteGroupMember(String groupId, String memberAccount)
/**
* 更新群成员禁言
* @param groupId
* @param account
* @param mute
*/
QDGroupMemberDao.getInstance().updateMemberMute(String groupId, String account, int mute)
QDGroup
/**
* 群组id
*/
id
/**
* 名称
*/
name
/**
* 描述
*/
description
/**
* 头像
*/
icon
/**
* 名称简拼
*/
nameSp
/**
* 群规模
*/
userLimit
/**
* 成员数
*/
userCount
/**
* 黑名单数
*/
blocksCount
/**
* 是否公开
*/
isPublic
/**
* 申请是否处理
*/
isRequest
/**
* 群主账号
*/
owner
/**
* 创建时间
*/
createTime
/**
* 是否禁言
*/
isMute
GroupMember
GroupMember.ROLE_MEMBER 普通成员
GroupMember.ROLE_MANAGER 管理员
GroupMember.ROLE_OWNER 群主
/**
* 成员账号
*/
account
/**
* 名称简拼
*/
nameSp
/**
* 名称
*/
name;
/**
* 头像
*/
icon
/**
* 群组Id
*/
groupId
/**
* 角色
*/
role
/**
* 昵称
*/
nickName
/**
* 禁言状态
*/
isMute