多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# 群组 ## 群组相关功能 创建群组 ``` /** * 创建群组 * @param groupName 群名称 * @param members 群成员(eg:[{"user_id":123, "name":张三},{"user_id":123, "name":张三}]) * @param icon 群图标url * @param callBack */ createGroup(String groupName, String members, QDResultCallBack callBack) createGroup(String groupName, String members, String icon, QDResultCallBack callBack) ``` 解散群组(群主删除群组) ``` /** * 退出群组 * @param groupId 群组id * @param callBack */ exitGroup(String groupId, QDResultCallBack callBack) ``` 退出群组(群成员主动退群) ``` /** * 退出群组 * @param groupId 群组id * @param callBack */ exitGroup(String groupId, QDResultCallBack callBack) ``` 获取群信息(获取群成员列表) ``` /** * 获取群组信息 * @param groupId 群组id * @param callBack */ getGroupInfo(String groupId, QDResultCallBack callBack) ``` 群组加人 ``` /** * 群组加人 * @param groupId 群组id * @param memberList 群成员列表 * @param callBack */ addGroupMember(String groupId, List<QDGroupMember> memberList, QDResultCallBack callBack) ``` 群组踢人 ``` /** * 群组踢人 * @param groupId 群组id * @param ids 被踢的成员id(id1,id2,id3) * @param callBack */ removeGroupMember(String groupId, String ids, QDResultCallBack callBack) ``` 更新群组信息 ``` /** * 更新群组信息(群名称name和群描述intro) * @param groupId 群组id * @param map map对象key值看上方 * @param callBack */ updateGroupInfo(String groupId, Map<String, String> map, QDResultCallBack callBack) ``` 更新群昵称 ``` /** * 更新群昵称(修改登陆者在群组的昵称) * @param groupId 群组id * @param nickName 修改后的昵称 * @param callBack */ updateNickName(String groupId, String nickName, QDResultCallBack callBack) ``` 设置或取消管理员 ``` /** * 设置或取消管理员 * @param groupId 群组id * @param userId 群成员id * @param role 0:取消管理员,1:设置管理员 * @param callBack */ public void setManager(String groupId, String userId, int role, QDResultCallBack callBack) ``` 群主转让 ``` /** * 群主转让 * @param groupId 群组id * @param userId 被转让的成员id * @param callBack */ changeOwner(String groupId, String userId, QDResultCallBack callBack) ``` 屏蔽/取消新消息通知 ``` /** * 屏蔽/取消新消息通知 * @param groupId 群组id * @param notifyType 1:取消;2屏蔽 * @param callBack */ setNotifyType(String groupId, int notifyType, QDResultCallBack callBack) ``` 发布公告 ``` /** * 发布公告 * @param groupId 群组id * @param notice 公告内容 * @param callBack */ issueNotice(String groupId, String notice, QDResultCallBack callBack) ``` 获取群文件 ``` /** * 获取群组文件 * @param groupId 群组id * @param callBack */ getGroupFiles(String groupId, QDResultCallBack callBack) ``` 删除群文件 ``` /** * 删除群文件 * @param groupId 群组id * @param fileId 被删的文件id * @param callBack */ deleteGroupFile(String groupId, String fileId, QDResultCallBack callBack) ``` 上传群文件 ``` /** * 上传群共享文件 * @param file 需要上传的文件 * @param groupId 群组id * @param callBack */ uploadGroupFile(File file, String groupId, QDFileCallBack callBack) ``` ## 群组相关对象 群组对象 QDGroup ``` //群组类型 TYPE_PERGROUP //个人群组 TYPE_ADMGROUP //固定群组 //屏蔽或取消新消息提醒 NOTIFY_ON //关闭 NOTIFY_OFF //打开 String id; //群组id String name; //群名称 String desc; //群描述 int limit; //最大人数 int count; //当前人数 String icon; //头像 String nameSP; //群名称简拼 String nameAP; //群名称全拼 int type; //群类型(0:个人群 1:固定群 2:临时群) String ownerId; //群主id String ownerName; //群主名称 String tag; //群标签 String createDate; //创建时间 int isPublic; //是否公开 String notice; //群公告 int notifyType; //是否屏蔽新消息提醒 ``` 群成员对象 QDGroupMember ``` //群角色 ROLE_OWNER //群主 ROLE_MANAGER //管理员 ROLE_NORMAL//普通成员 String uid; //成员id String name; //成员名称 String icon; //成员头像 String groupId; //群组id String groupName; //群组名称 int role; //角色(0:普通成员,1:管理员,2:群主) String nickName; //群昵称 String extData; //扩展字段 ``` ## 群组相关数据库操作 ``` /** * 插入一组数据 * @param groupList */ QDGroupHelper.insertGroupList(List<QDGroup> groupList) /** * 插入一个数据 * @param group */ QDGroupHelper.insertGroup(QDGroup group) /** * 根据群组id获取群信息 * @param id 群组id * @return QDGroup */ QDGroupHelper.getGroupById(String id) /** * 删除群组表 */ QDGroupHelper.deleteGroupTable() /** * 根据群组id删除群组 * @param id 群组id */ QDGroupHelper.deleteGroupById(String id) /** * 获取群组数量 * @return int */ QDGroupHelper.getGroupCount() /** * 更新群组信息 * @param group */ QDGroupHelper.updateGroup(QDGroup group) /** * 获取所有群组 * @return List<QDGroup> */ QDGroupHelper.getAllGroups() /** * 获取自己创建的群 * @return List<QDGroup> */ QDGroupHelper.getMineGroups() /** * 获取加入的群 * @return List<QDGroup> */ QDGroupHelper.getJoinedGroups() /** * 搜索群组 * @param searchText 搜索字符串 * @return List<QDGroup> */ QDGroupHelper.searchGroup(String searchText) /** * 获取所有群组id列表 * @return List<String> */ QDGroupHelper.getAllGroupId() ``` ``` /** * 删除所有群组人员信息 */ QDGroupMemberHelper.deleteTable() /** * 插入群成员列表 * @param memberList */ QDGroupMemberHelper.insertGroupMembers(List<QDGroupMember> memberList) /** * 根据群组id和用户id获取成员信息 * @param groupId 群组id * @param userId 成员id */ QDGroupMemberHelper.getMemberInfoByGroupIdAndUserId(String groupId, String userId) /** * 更新成员信息 * @param member 群成员对象 */ QDGroupMemberHelper.updateMemberInfo(QDGroupMember member) /** * 更新群昵称 * @param groupId 群组id * @param userId 群成员id * @param nickName 昵称 */ QDGroupMemberHelper.updateNickName(String groupId, String userId, String nickName) /** * 根据群组id获取某个群组的成员列表 * @param groupId 群组id * @return List<QDGroupMember> */ QDGroupMemberHelper.getMembersByGroupId(String groupId) /** * 删除某个群的群成员 * @param groupId 群组id */ QDGroupMemberHelper.deleteMembersByGroupId(String groupId) /** * 搜索群成员 * @param groupId 群组 id * @param searchText 搜索字符串 * @return List<QDGroupMember> */ QDGroupMemberHelper.searchMember(String groupId, String searchText) ```