浏览代码

增加发送消息提示黑名单流程(UI提示待补充)

Pq 2 月之前
父节点
当前提交
779f58dae4

+ 3 - 0
TUIKit/TIMCommon/timcommon/src/main/java/com/tencent/qcloud/tuikit/timcommon/component/MessageProperties.java

@@ -1,5 +1,6 @@
 package com.tencent.qcloud.tuikit.timcommon.component;
 
+import android.content.Context;
 import android.graphics.drawable.Drawable;
 import android.widget.EditText;
 
@@ -285,5 +286,7 @@ public class MessageProperties implements IMessageProperties {
     public interface OnEventListener {
         boolean onMessageClick(TUIMessageBean messageBean);
         boolean onAvatarClick(TUIMessageBean messageBean);
+
+        boolean onParseError(Context context,String module, int errCode, String errMsg);
     }
 }

+ 5 - 0
TUIKit/TUIChat/tuichat/src/main/java/com/tencent/qcloud/tuikit/tuichat/classicui/widget/ChatView.java

@@ -34,6 +34,7 @@ import com.tencent.qcloud.tuicore.TUICore;
 import com.tencent.qcloud.tuicore.TUIThemeManager;
 import com.tencent.qcloud.tuicore.util.ToastUtil;
 import com.tencent.qcloud.tuikit.timcommon.bean.TUIMessageBean;
+import com.tencent.qcloud.tuikit.timcommon.component.MessageProperties;
 import com.tencent.qcloud.tuikit.timcommon.component.TitleBarLayout;
 import com.tencent.qcloud.tuikit.timcommon.component.UnreadCountTextView;
 import com.tencent.qcloud.tuikit.timcommon.component.dialog.TUIKitDialog;
@@ -1157,6 +1158,10 @@ public class ChatView extends LinearLayout implements IChatLayout {
                             + getResources().getString(com.tencent.qcloud.tuicore.R.string.TUIKitErrorUnsupporInterfaceSuffix);
                     }
                 }
+                MessageProperties.OnEventListener eventListener = MessageProperties.getInstance().getEventListener();
+                if (eventListener != null && eventListener.onParseError(getContext(),module,errCode,errMsg)) {
+                    return;
+                }
                 ToastUtil.toastLongMessage(toastMsg);
             }
 

+ 14 - 0
chatModule/src/main/java/com/cooleshow/chatmodule/ui/ChatFragment.java

@@ -1,5 +1,6 @@
 package com.cooleshow.chatmodule.ui;
 
+import android.content.Context;
 import android.graphics.Typeface;
 import android.text.TextUtils;
 import android.view.LayoutInflater;
@@ -20,8 +21,10 @@ import com.cooleshow.chatmodule.databinding.TcFragmentChatLayoutBinding;
 import com.cooleshow.chatmodule.manager.IMCenter;
 import com.cooleshow.chatmodule.utils.helper.ChatAvatarClickHelper;
 import com.cooleshow.chatmodule.utils.helper.IMThemManager;
+import com.cooleshow.chatmodule.widget.CommonConfirmDialog2;
 import com.google.android.material.tabs.TabLayout;
 import com.google.android.material.tabs.TabLayoutMediator;
+import com.tencent.imsdk.BaseConstants;
 import com.tencent.qcloud.tuikit.timcommon.bean.TUIMessageBean;
 import com.tencent.qcloud.tuikit.timcommon.component.MessageProperties;
 
@@ -111,6 +114,17 @@ public class ChatFragment extends BaseFragment<TcFragmentChatLayoutBinding> impl
                 }
                 return false;
             }
+
+            @Override
+            public boolean onParseError(Context context, String module, int errCode, String errMsg) {
+                if(errCode == BaseConstants.ERR_SVR_MSG_IN_PEER_BLACKLIST){
+                    //黑名单
+                    CommonConfirmDialog2 commonConfirmDialog2 =new CommonConfirmDialog2(context);
+                    commonConfirmDialog2.show();
+                    return true;
+                }
+                return false;
+            }
         });
     }