怎么修改内置消息的推送显示

  1. 设置发送消息监听器

    IMCenter.getInstance().setMessageInterceptor()
    
  2. 可以参考下面代码:

    private void initInterceptor() {
        IMCenter.getInstance().setMessageInterceptor(
        new MessageInterceptor() {
            @Override
            public boolean interceptReceivedMessage(
                Message message,
                int left,
                boolean hasPackage,
                boolean offline) {
                return false;
            }
    
            @Override
            public boolean interceptOnSendMessage(Message message) {
                MessageContent messageContent = message.getContent();
                String language = mContext.getResources().getConfiguration().locale.getLanguage();
                if (language.endsWith("en")) { // 手机系统语言为英文
                    if (messageContent instanceof VoiceMessage) {
                        MessagePushConfig messagePushConfig = message.getMessagePushConfig();
                        if (messagePushConfig == null){
                            messagePushConfig = new MessagePushConfig();
                            message.setMessagePushConfig(messagePushConfig);
                        }
                        messagePushConfig.setPushContent("\[voice\]");// 语音消息时推送显示为 "\[voice\]"
                    }
                }
                return false;
    
                }
    
            @Override
            public boolean interceptOnSentMessage(Message message) {
                if (message != null) {
                message.setMessageConfig(null);
                }
    
                return false;
            }
    
    
            @Override
            public boolean interceptOnInsertOutgoingMessage(
                Conversation.ConversationType type,
                String targetId,
                Message.SentStatus sentStatus,
                MessageContent content,
                long time) {
                return false;
                }
    
            
    
            @Override
            public boolean interceptOnInsertIncomingMessage(
                Conversation.ConversationType type,
                String targetId,
                String senderId,
                Message.ReceivedStatus receivedStatus,
                MessageContent content,
                long time) {
                return false;
                }
            });
    
            }