public void onRepNormalGroupList(IMGroup.IMNormalGroupListRsp normalGroupListRsp) { logger.i("group#onRepNormalGroupList"); int groupSize = normalGroupListRsp.getGroupVersionListCount(); logger.i("group#onRepNormalGroupList cnt:%d", groupSize); List<IMBaseDefine.GroupVersionInfo> versionInfoList = normalGroupListRsp.getGroupVersionListList(); /** 对比DB中的version字段 */ // 这块对比的可以抽离出来 List<IMBaseDefine.GroupVersionInfo> needInfoList = new ArrayList<>(); for (IMBaseDefine.GroupVersionInfo groupVersionInfo : versionInfoList) { int groupId = groupVersionInfo.getGroupId(); int version = groupVersionInfo.getVersion(); if (groupMap.containsKey(groupId) && groupMap.get(groupId).getVersion() == version) { continue; } IMBaseDefine.GroupVersionInfo versionInfo = IMBaseDefine.GroupVersionInfo.newBuilder().setVersion(0).setGroupId(groupId).build(); needInfoList.add(versionInfo); } // 事件触发的时候需要注意 todo if (needInfoList.size() > 0) { reqGetGroupDetailInfo(needInfoList); } }