1.新增赛事消息uid 2.系统用户uid判断逻辑优化

This commit is contained in:
huangjian
2021-04-14 17:04:19 +08:00
parent efd0c89321
commit 4f6c8eeb1b
11 changed files with 59 additions and 63 deletions

View File

@@ -35,7 +35,6 @@ import com.yizhuan.erban.ui.im.audio.ShakeHeartDialogFragment;
import com.yizhuan.erban.ui.im.fragment.MessageFragment;
import com.yizhuan.erban.ui.widget.higuide.TuTuGuideHelper;
import com.yizhuan.tutu.mentoring_relationship.dialog.BuildMentoringRelationshipSuccessDialog;
import com.yizhuan.xchat_android_constants.XChatConstants;
import com.yizhuan.xchat_android_core.audio.event.VoiceShakeHeartEvent;
import com.yizhuan.xchat_android_core.auth.AuthModel;
import com.yizhuan.xchat_android_core.im.friend.IMFriendModel;
@@ -51,6 +50,7 @@ import com.yizhuan.xchat_android_core.statistic.StatisticManager;
import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol;
import com.yizhuan.xchat_android_core.user.UserModel;
import com.yizhuan.xchat_android_core.user.bean.UserInfo;
import com.yizhuan.xchat_android_core.utils.SystemUidUtil;
import com.yizhuan.xchat_android_library.utils.ListUtils;
import com.yizhuan.xchat_android_library.utils.SingleToastUtil;
@@ -59,7 +59,6 @@ import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;
import java.util.List;
import java.util.Objects;
import java.util.Set;
import io.reactivex.functions.Consumer;
@@ -194,16 +193,12 @@ public class NimP2PMessageActivity extends NewBaseMessageActivity {
private boolean shouldDisplayAntiFraudTips() {
return !IMFriendModel.get().isMyFriend(sessionId) &&
(!(Objects.equals(sessionId, String.valueOf(XChatConstants.SECRETARY_UID)) ||
Objects.equals(sessionId, String.valueOf(XChatConstants.SYSTEM_MESSAGE_UID)))) &&
!SystemUidUtil.isSystemUid(sessionId) &&
!IMFriendModel.get().hasCloseTips(sessionId);
}
private void addBlackList() {
// 官方小秘书
if (sessionId.equals(String.valueOf(XChatConstants.SECRETARY_UID))) return;
// 系统消息
if (Objects.equals(sessionId, String.valueOf(XChatConstants.SYSTEM_MESSAGE_UID))) return;
if (SystemUidUtil.isSystemUid(sessionId)) return;
ivAddBlackList = findViewById(R.id.iv_add_black_list);
ivAddBlackList.setVisibility(View.VISIBLE);
ivAddBlackList.setOnClickListener((view) -> {
@@ -418,8 +413,7 @@ public class NimP2PMessageActivity extends NewBaseMessageActivity {
fragment.setContainerId(R.id.message_fragment_container);
// 等级限制:官方小秘书 和 系统消息,不设置等级限制
if (!Objects.equals(sessionId, String.valueOf(XChatConstants.SECRETARY_UID)) &&
!Objects.equals(sessionId, String.valueOf(XChatConstants.SYSTEM_MESSAGE_UID))) {
if (!SystemUidUtil.isSystemUid(sessionId)) {
UserInfo userInfo = UserModel.get().getCacheLoginUserInfo();
if (userInfo != null) {
UserLevelVo userLevelVo = userInfo.getUserLevelVo();

View File

@@ -7,12 +7,6 @@ import android.graphics.Color;
import android.media.AudioManager;
import android.net.Uri;
import android.os.Bundle;
import androidx.annotation.NonNull;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.TextUtils;
@@ -24,8 +18,12 @@ import android.view.ViewGroup;
import android.widget.FrameLayout;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
import androidx.annotation.NonNull;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.alibaba.fastjson.JSON;
import com.google.gson.Gson;
import com.netease.nim.uikit.api.UIKitOptions;
import com.netease.nim.uikit.api.model.main.CustomPushContentProvider;
@@ -65,8 +63,6 @@ import com.yizhuan.erban.avroom.game.GameSelectDialog;
import com.yizhuan.erban.avroom.game.PlayGameActivity;
import com.yizhuan.erban.bindadapter.BaseAdapter;
import com.yizhuan.erban.common.widget.OriginalDrawStatusClickSpan;
import com.yizhuan.xchat_android_constants.XChatConstants;
import com.yizhuan.xchat_android_core.room.event.MessageSizeEvent;
import com.yizhuan.erban.ui.im.GreetPresenter;
import com.yizhuan.erban.ui.im.MessageListPanelEx;
import com.yizhuan.erban.ui.im.avtivity.NimP2PMessageActivity;
@@ -85,12 +81,14 @@ import com.yizhuan.xchat_android_core.im.game.GameResultEvent;
import com.yizhuan.xchat_android_core.im.game.ImGameInfo;
import com.yizhuan.xchat_android_core.im.game.ImGameMode;
import com.yizhuan.xchat_android_core.market_verify.MarketVerifyModel;
import com.yizhuan.xchat_android_core.room.event.MessageSizeEvent;
import com.yizhuan.xchat_android_core.room.game.ChangeGameEvent;
import com.yizhuan.xchat_android_core.room.game.GameInfo;
import com.yizhuan.xchat_android_core.room.game.GameModel;
import com.yizhuan.xchat_android_core.room.game.GameResultInfo;
import com.yizhuan.xchat_android_core.statistic.StatisticManager;
import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol;
import com.yizhuan.xchat_android_core.utils.SystemUidUtil;
import com.yizhuan.xchat_android_library.rxbus.RxBus;
import com.yizhuan.xchat_android_library.utils.JavaUtil;
import com.yizhuan.xchat_android_library.utils.SingleToastUtil;
@@ -106,7 +104,6 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import io.reactivex.Observable;
import io.reactivex.android.schedulers.AndroidSchedulers;
@@ -340,8 +337,7 @@ public class MessageFragment extends TFragment implements ModuleProxy, MessageLi
sessionType = (SessionTypeEnum) getArguments().getSerializable(Extras.EXTRA_TYPE);
inRoom = getArguments().getBoolean(IN_ROOM, false);
ImGameMode.get().inRoom = inRoom;
if (inRoom || sessionId.equals(String.valueOf(XChatConstants.SECRETARY_UID))
|| Objects.equals(sessionId, String.valueOf(XChatConstants.SYSTEM_MESSAGE_UID))) {
if (inRoom || SystemUidUtil.isSystemUid(sessionId)) {
rootView.findViewById(R.id.iv_game).setVisibility(View.GONE);
}
initUserLikeGame();

View File

@@ -1,18 +1,16 @@
package com.yizhuan.erban.ui.im.recent;
import android.os.Bundle;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import com.coorchice.library.utils.LogUtils;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.netease.nim.uikit.api.NimUIKit;
import com.netease.nim.uikit.api.model.contact.ContactChangedObserver;
import com.netease.nim.uikit.api.model.main.OnlineStateChangeObserver;
@@ -51,10 +49,10 @@ import com.qiyukf.unicorn.api.msg.UnicornMessage;
import com.yizhuan.erban.R;
import com.yizhuan.erban.home.event.ContactTrashEvent;
import com.yizhuan.erban.ui.im.recent.adapter.RecentContactAdapter;
import com.yizhuan.xchat_android_constants.XChatConstants;
import com.yizhuan.xchat_android_core.customer_server.CustomerServerModel;
import com.yizhuan.xchat_android_core.customer_server.event.CustomerServerMsgEvent;
import com.yizhuan.xchat_android_core.utils.CheckUtils;
import com.yizhuan.xchat_android_core.utils.SystemUidUtil;
import com.yizhuan.xchat_android_library.utils.SingleToastUtil;
import org.greenrobot.eventbus.EventBus;
@@ -398,8 +396,7 @@ public class RecentContactsFragment extends TFragment {
Iterator<RecentContact> iterator = items.iterator();
while (iterator.hasNext()) {
RecentContact recentContact = iterator.next();
if (!recentContact.getContactId().equals(String.valueOf(XChatConstants.SECRETARY_UID)) &&
!recentContact.getContactId().equals(String.valueOf(XChatConstants.SYSTEM_MESSAGE_UID))) {
if (!SystemUidUtil.isSystemUid(recentContact.getContactId()) ) {
iterator.remove();
}
}

View File

@@ -16,12 +16,11 @@ import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
import com.netease.nimlib.sdk.msg.model.RecentContact;
import com.yizhuan.erban.R;
import com.yizhuan.erban.ui.utils.ImageLoadUtils;
import com.yizhuan.xchat_android_constants.XChatConstants;
import com.yizhuan.xchat_android_core.level.UserLevelVo;
import com.yizhuan.xchat_android_core.noble.NobleInfo;
import com.yizhuan.xchat_android_core.noble.NobleUtil;
import com.yizhuan.xchat_android_core.user.UserModel;
import com.yizhuan.xchat_android_core.utils.SystemUidUtil;
import static android.view.View.GONE;
import static android.view.View.INVISIBLE;
@@ -141,9 +140,7 @@ public class CommonRecentViewHolder extends RecentViewHolder {
if (recent == null) return;
String contactId = recent.getContactId();
//去除小秘书,系统消息
long sysMsgUid = XChatConstants.SYSTEM_MESSAGE_UID;
long secretaryUid = XChatConstants.SECRETARY_UID;
if (String.valueOf(sysMsgUid).equals(contactId) || String.valueOf(secretaryUid).equals(contactId)) {
if (SystemUidUtil.isSystemUid(contactId) ) {
return;
}

View File

@@ -4,22 +4,21 @@ import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import androidx.annotation.Nullable;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import com.yizhuan.erban.R;
import com.yizhuan.erban.base.BaseFragment;
import com.yizhuan.erban.common.NoDataFragment;
import com.yizhuan.erban.friend.action.AbstractSelectFriendAction;
import com.yizhuan.erban.friend.view.SelectFriendActivity;
import com.yizhuan.erban.ui.im.avtivity.NimP2PMessageActivity;
import com.yizhuan.erban.ui.relation.adapter.FansViewAdapter;
import com.yizhuan.erban.ui.user.UserInfoActivity;
import com.yizhuan.tutu.room_chat.activity.NimRoomP2PMessageActivity;
import com.yizhuan.xchat_android_constants.XChatConstants;
import com.yizhuan.xchat_android_core.Constants;
import com.yizhuan.xchat_android_core.auth.AuthModel;
import com.yizhuan.xchat_android_core.im.friend.IMFriendModel;
@@ -29,6 +28,7 @@ import com.yizhuan.xchat_android_core.user.AttentionModel;
import com.yizhuan.xchat_android_core.user.bean.FansInfo;
import com.yizhuan.xchat_android_core.user.bean.FansListInfo;
import com.yizhuan.xchat_android_core.user.event.LoginUserInfoUpdateEvent;
import com.yizhuan.xchat_android_core.utils.SystemUidUtil;
import com.yizhuan.xchat_android_library.utils.ListUtils;
import org.greenrobot.eventbus.EventBus;
@@ -128,7 +128,7 @@ public class FansListFragment extends BaseFragment {
adapter.setRylListener(new FansViewAdapter.OnItemClickListener() {
@Override
public void onItemClick(FansInfo fansInfo) {
if (XChatConstants.SECRETARY_UID == fansInfo.getUid()) {
if (SystemUidUtil.isSystemUid(String.valueOf(fansInfo.getUid()))) {
return;
}
if (type == ROOM_MSG) {

View File

@@ -17,7 +17,6 @@ import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.netease.nim.uikit.StatusBarUtil;
import com.yizhuan.erban.ui.widget.rollviewpager.hintview.TextHintView;
import com.netease.nim.uikit.impl.cache.NimUserInfoCache;
import com.netease.nim.uikit.support.glide.GlideApp;
import com.netease.nimlib.sdk.RequestCallbackWrapper;
@@ -45,6 +44,7 @@ import com.yizhuan.erban.ui.user.adapter.UserInfoPhotoAdapter;
import com.yizhuan.erban.ui.utils.ImageLoadUtils;
import com.yizhuan.erban.ui.widget.ButtonItem;
import com.yizhuan.erban.ui.widget.ObservableScrollView;
import com.yizhuan.erban.ui.widget.rollviewpager.hintview.TextHintView;
import com.yizhuan.erban.utils.RegexUtil;
import com.yizhuan.xchat_android_constants.XChatConstants;
import com.yizhuan.xchat_android_core.auth.AuthModel;
@@ -67,6 +67,7 @@ import com.yizhuan.xchat_android_core.user.bean.UserInfo;
import com.yizhuan.xchat_android_core.user.bean.UserPhoto;
import com.yizhuan.xchat_android_core.user.event.LoginUserInfoUpdateEvent;
import com.yizhuan.xchat_android_core.utils.StarUtils;
import com.yizhuan.xchat_android_core.utils.SystemUidUtil;
import com.yizhuan.xchat_android_core.utils.net.BeanObserver;
import com.yizhuan.xchat_android_core.utils.net.DontWarnObserver;
import com.yizhuan.xchat_android_core.utils.net.RxHelper;
@@ -154,7 +155,7 @@ public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBindin
if (bottomViewLayout != null)
bottomViewLayout.setVisibility(View.GONE);
} else {
if (userId == XChatConstants.SECRETARY_UID || userId == XChatConstants.SYSTEM_MESSAGE_UID) {
if (SystemUidUtil.isSystemUid(String.valueOf(userId))) {
identityState = IdentityState.NON;
} else {
identityState = IdentityState.OTHER;

View File

@@ -28,7 +28,6 @@ import com.yizhuan.erban.R;
import com.yizhuan.erban.ui.im.avtivity.NewBaseMessageActivity;
import com.yizhuan.erban.ui.im.fragment.MessageFragment;
import com.yizhuan.tutu.room_chat.event.ClickRootViewEvent;
import com.yizhuan.xchat_android_constants.XChatConstants;
import com.yizhuan.xchat_android_core.im.friend.IMFriendModel;
import com.yizhuan.xchat_android_core.initial.InitialModel;
import com.yizhuan.xchat_android_core.initial.bean.InitInfo;
@@ -37,18 +36,15 @@ import com.yizhuan.xchat_android_core.manager.IMNetEaseManager;
import com.yizhuan.xchat_android_core.manager.RoomEvent;
import com.yizhuan.xchat_android_core.user.UserModel;
import com.yizhuan.xchat_android_core.user.bean.UserInfo;
import com.yizhuan.xchat_android_core.utils.SystemUidUtil;
import com.yizhuan.xchat_android_library.utils.SingleToastUtil;
import org.greenrobot.eventbus.EventBus;
import java.util.List;
import java.util.Objects;
import java.util.Set;
/**
* 点对点聊天界面
* <p/>
@@ -112,8 +108,7 @@ public class NimRoomP2PMessageActivity extends NewBaseMessageActivity {
private boolean shouldDisplayAntiFraudTips() {
return !IMFriendModel.get().isMyFriend(sessionId) &&
(!(Objects.equals(sessionId, String.valueOf(XChatConstants.SECRETARY_UID)) ||
Objects.equals(sessionId, String.valueOf(XChatConstants.SYSTEM_MESSAGE_UID)))) &&
!SystemUidUtil.isSystemUid(sessionId) &&
!IMFriendModel.get().hasCloseTips(sessionId);
}
@@ -276,8 +271,7 @@ public class NimRoomP2PMessageActivity extends NewBaseMessageActivity {
fragment.setContainerId(R.id.message_fragment_container);
// 等级限制:官方小秘书 和 系统消息,不设置等级限制
if (!Objects.equals(sessionId, String.valueOf(XChatConstants.SECRETARY_UID)) &&
!Objects.equals(sessionId, String.valueOf(XChatConstants.SYSTEM_MESSAGE_UID))) {
if (!SystemUidUtil.isSystemUid(sessionId)) {
UserInfo userInfo = UserModel.get().getCacheLoginUserInfo();
if (userInfo != null) {
UserLevelVo userLevelVo = userInfo.getUserLevelVo();

View File

@@ -12,7 +12,7 @@ import com.netease.nim.uikit.common.ui.recyclerview.holder.BaseViewHolder;
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
import com.netease.nimlib.sdk.msg.model.RecentContact;
import com.yizhuan.erban.R;
import com.yizhuan.xchat_android_constants.XChatConstants;
import com.yizhuan.xchat_android_core.utils.SystemUidUtil;
import static android.view.View.GONE;
import static android.view.View.VISIBLE;
@@ -119,9 +119,7 @@ public class RoomMsgCommonRecentViewHolder extends RoomMsgRecentViewHolder {
if (recent == null) return;
String contactId = recent.getContactId();
//去除小秘书,系统消息
long sysMsgUid = XChatConstants.SYSTEM_MESSAGE_UID;
long secretaryUid = XChatConstants.SECRETARY_UID;
if (String.valueOf(sysMsgUid).equals(contactId) || String.valueOf(secretaryUid).equals(contactId)) {
if (SystemUidUtil.isSystemUid(contactId) ) {
return;
}
}

View File

@@ -3,19 +3,18 @@ package com.yizhuan.tutu.room_chat.fragment;
import android.annotation.SuppressLint;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import androidx.annotation.Nullable;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout;
import com.yizhuan.erban.R;
import com.yizhuan.erban.base.BaseFragment;
import com.yizhuan.erban.common.NoDataFragment;
import com.yizhuan.erban.ui.im.avtivity.NimP2PMessageActivity;
import com.yizhuan.tutu.room_chat.activity.NimRoomP2PMessageActivity;
import com.yizhuan.tutu.room_chat.adapter.RoomMsgFansViewAdapter;
import com.yizhuan.xchat_android_constants.XChatConstants;
import com.yizhuan.xchat_android_core.Constants;
import com.yizhuan.xchat_android_core.auth.AuthModel;
import com.yizhuan.xchat_android_core.praise.event.PraiseEvent;
@@ -23,6 +22,7 @@ import com.yizhuan.xchat_android_core.user.AttentionModel;
import com.yizhuan.xchat_android_core.user.bean.FansInfo;
import com.yizhuan.xchat_android_core.user.bean.FansListInfo;
import com.yizhuan.xchat_android_core.user.event.LoginUserInfoUpdateEvent;
import com.yizhuan.xchat_android_core.utils.SystemUidUtil;
import com.yizhuan.xchat_android_library.utils.ListUtils;
import org.greenrobot.eventbus.EventBus;
@@ -105,7 +105,7 @@ public class RoomMsgFansListFragment extends BaseFragment {
adapter.setOnItemChildClickListener((adapter1, view, position) -> {
FansInfo fansInfo = (FansInfo) adapter1.getItem(position);
if (fansInfo != null) {
if (XChatConstants.SECRETARY_UID == fansInfo.getUid()) {
if ( SystemUidUtil.isSystemUid(String.valueOf(fansInfo.getUid())) ) {
return;
}

View File

@@ -210,13 +210,18 @@ public class XChatConstants {
/**
* 系统消息那个用户的UID
*/
public static final long SYSTEM_MESSAGE_UID = BuildConfig.DEBUG ? 935008 : 935066;
public static final String SYSTEM_MESSAGE_UID = BuildConfig.DEBUG ? "935008" : "935066";
/**
* 小秘书那个用户的UID
*/
public static final long SECRETARY_UID = BuildConfig.DEBUG ? 935001 : 935067;
public static final String SECRETARY_UID = BuildConfig.DEBUG ? "935001" : "935067";
/**
* 赛事消息UID
*/
public static final String MATCH_UID = BuildConfig.DEBUG ? "1296314" : "1296314";
/**

View File

@@ -0,0 +1,14 @@
package com.yizhuan.xchat_android_core.utils;
import com.yizhuan.xchat_android_constants.XChatConstants;
public class SystemUidUtil {
public static boolean isSystemUid(String uid) {
return XChatConstants.SECRETARY_UID.equals(uid)
|| XChatConstants.SYSTEM_MESSAGE_UID.equals(uid)
|| XChatConstants.MATCH_UID.equals(uid);
}
}