环信移动客服客服昵称头像设置

上篇说了环信移动客服的基本配置,这篇主要介绍如何使移动客服的头像显示在自己的UI上

1.登录移动客服->管理员模式->设置->系统开关内->打开访客端显示客服昵称,记得选择后要保存 如图:

2.在EaseMessageViewController.m中进行解析数据,修改formatMessages:方法,进行判断

  if (model.isSender) {
                //自己
               // model.avatarURLPath  = @"service.png";
               // model.nickname = @"";
            }
            else{
                NSMutableString *avatarPath = [[NSMutableString alloc] initWithFormat:@"%@", message.ext[@"weichat"][@"agent"][@"avatar"]];
                NSString *pathUrl = [avatarPath substringWithRange:NSMakeRange(1, avatarPath.length-1)];
                NSArray *array = [pathUrl componentsSeparatedByString:@"|"];
                NSLog(@"%@", array[0]);
                model.avatarURLPath = [NSString stringWithFormat:@"%@%@", @"http://kefu.easemob.com/ossimages", array[0]];
                NSString *nicknameStr = message.ext[@"weichat"][@"agent"][@"userNickname"]; 

                model.nickname = message.ext[@"weichat"][@"agent"][@"userNickname"];
              }
            }


获取客服信息在:message.ext中,可以打印message.ext,进行解析出头像和昵称,在头像方面要注意:我用了三个字符串处理方法,第一个是取出字符串前面的“/”, 第二个截取字符串,将字符串后面的图片宽高去掉,不然加载不出来图片,第三个拼接上 http://kefu.easemob.com/ossimages


3.在EaseBaseMessageCell.h中修改setModel:方法

if (model.avatarURLPath) {
        
        [self.avatarView sd_setImageWithURL:[NSURL URLWithString:model.avatarURLPath] placeholderImage:[UIImage imageNamed:@"service.png"]];
        NSLog(@"%@", model.avatarURLPath);
    } else {
      self.avatarView.image = [UIImage imageNamed:@"EaseUIResource.bundle/user"];
    }

4.就可以运行了


要在环信聊天中显示头像昵称,可以按照以下步骤进行: 1. 设置用户头像昵称 在用户注册或登录时,将用户头像昵称保存在环信服务器中,代码如下: ```java // 设置用户昵称 EMClient.getInstance().pushManager().updatePushNickname(nickname); // 设置用户头像 EMClient.getInstance().pushManager().updatePushNoDisturbStatus(isNoDisturb); ``` 2. 获取用户头像昵称 在聊天页面中,从环信服务器获取用户头像昵称,代码如下: ```java // 获取用户昵称 EMUserInfo userInfo = EMClient.getInstance().userInfoManager().getUserInfo(userId); String nickname = userInfo.getNickname(); // 获取用户头像 EMUserInfo userInfo = EMClient.getInstance().userInfoManager().getUserInfo(userId); String avatarUrl = userInfo.getAvatarUrl(); ``` 3. 显示用户头像昵称 使用第二步中获取到的用户头像昵称,使用自定义的布局文件来显示头像昵称,代码如下: ```xml <RelativeLayout android:id="@+id/layout_user_info" android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical"> <ImageView android:id="@+id/iv_avatar" android:layout_width="50dp" android:layout_height="50dp" android:src="@drawable/default_avatar" /> <TextView android:id="@+id/tv_nickname" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="昵称" android:textSize="14sp" android:textColor="#333333" android:layout_marginLeft="10dp" android:layout_toRightOf="@id/iv_avatar" /> </RelativeLayout> ``` 在代码中获取到布局文件中的 ImageView 和 TextView 控件,使用 Glide 等图片加载库加载用户头像设置 TextView 的文本为用户昵称。 以上就是 Android 环信聊天头像昵称显示的解决方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值