1 / 5
文档名称:

环信相关面试题-iOS.docx

格式:docx   大小:182KB   页数:5页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

环信相关面试题-iOS.docx

上传人:mh900965 2017/12/22 文件大小:182 KB

下载得到文件列表

环信相关面试题-iOS.docx

相关文档

文档介绍

文档介绍:环信相关面试题:
1、对环信的理解:主要回答环信是干嘛的,有哪些优缺点,使用的什么通讯协议
环信是一个即时通信的服务提供商
环信使用的是XMPP协议,它是再XMPP的基础上进行二次开发,对服务器Openfire和客户端进行功能模型的添加和客户端SDK的封装,环信的本质还是使用XMPP,基本于Socket的网络通信
环信内部实现了数据缓存,会把聊天记录添加到数据库,把附件(如音频文件,图片文件)下载到本地,使程序员更多时间是花到用户即时体验上
环信内部已经实现了视频,音频,图片,其它附件发送功能
环信使用公司可以节约时间成本,不需要公司内部搭建服务器,客户端的开发,使用环信SDK比使用XMPPFramework更简洁方便
2、环信中图片消息以及语言消息实现的逻辑是什么
图片消息:首先通过相册或相机得到图片对象,然后将图片转换成NSData类型或将图片保存到沙盒,通过环信的EMImageMessageBody的initWithData或者initWithLocalPath方法,构造出图片消息,然后发送出去,收到图片消息时,客户端会主动将图片下载到本地,同时消息对象包含两个路径(本地和网络),我们可以根据路径得到图片,然后显示
语音消息:首先通过 AVAudioRecorder类进行录音,将录音文件转化成NSData类型或将文件保存到沙盒,构造出语音消息,然后发送出去,收到语音消息时,客户端会主动将图片下载到本地,同时消息对象包含两个路径(本地和网络),我们可以根据路径得到文件,然后通过 AVAudioPlayer类继续播放
3、环信中是怎么实现好友管理的
所谓的好友管理就是好友关系的维护,包括增、删以及黑名单的设置,环信中好友相关的操作都与 IEMContactManager类有关,好友列表可以通过FriendListViewController方法获得,好友的增加可以通过两种方式,一是主动添加(
addContact),一是被动添加( didReceiveFriendInvitationFromUsername),删除好友关系的方法是 deleteContact,同时可以通过 addUserToBlackList方法将好友拉近黑名单
4、即时通讯app中的气泡聊天是怎么处理图片拉伸的
气泡拉伸有三种方式:
1、ios5之前:- (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapHeight;这个方法只有2个参数,leftCapWidth代表左端盖宽度,topCapHeight代表顶端盖高度。系统会自动计算出右端盖宽度(rightCapWidth)和底端盖高度(bottomCapHeight),使用这个方法只会拉伸图片中间的区域,并不会影响到边缘和角落
2、ios5:- (UIImage *)resizableImageWithCapInsets:(UIEdgeInsets)capInsets。这个方法只接收一个UIEdgeInsets类型的参数,可以通过设置UIEdgeInsets的left、right、top、bottom来分别指定左端盖宽度、右端盖宽度、顶端盖高度、底端