美文网首页
即时通信:环信3.0以后的版本使用

即时通信:环信3.0以后的版本使用

作者: BLUEVIPIOS_ | 来源:发表于2017-10-16 16:16 被阅读0次

    本文主要介绍的是环信s d k的使用,及注释分解及如何使用。

    1. 集成方面:

    1> 准备工作,官方文档还是要看一下,下载官方demo先把相应的静态库文件倒入工程添加响应的依赖裤编译至不报错  。参考链接:http://docs.easemob.com/im/300iosclientintegration/140iosquickstart。如果集成依然报错参考这个视频:http://www.imgeek.org/video/:如果依然无法解决,百度或发信我,我也在总结报错原因及如何解决,我和大家一样也在学习。

    2.>编译正常,恭喜集成成功。集成成功后揭下来就是ui部分。可以把整个ChatUI部分倒入工程,注意重复的第三方库,小编用的一些第三方库与环信重复,只能一个个删除。其实很快的,工程上用的东西都可以快速查到,上面链接有这部分视频讲解。好了,接下来就看下如何在工程上具体使用。

    2.介绍:

    1>首先要明白:EMClient: 是 SDK 的入口,主要完成登录、退出、连接管理等功能。也是获取其他模块的入口。EMChatManager: 管理消息的收发,完成会话管理等功能。EMContactManager: 负责好友的添加删除,黑名单的管理。EMGroupManager: 负责群组的管理,创建、删除群组,管理群组成员等功能。EMChatroomManager: 负责聊天室的管理。都在HyphenateFullSDK文件下面。

    2>文件说明及功能代码的文件位置

    1.是定义的洪,主要是一些简写方式的洪。2是一些初始化,注意一些细节及功能调用,直接套用里面的代码就行,对于ContactListViewController/ConversationListController/ChatViewController 这三个类做相应修改根据自己需要,小编一般都只会修改ContactListViewController涉及到的方法,不涉及到好友添加/删除。对于这三个类在赋值时确保已被初始化。其实很简单,比这着葫芦画瓢完全可以实现的,这个文件也可以不要,把相关代码写到主控制器中,官方技术人员也提到过。3是聊天室,4是数据存储,5可以说是头文件。

    3.使用

    1.推送

          首先我们还是要先注册授权推送,在工程里面一般都会设计到app推送,我一般使用激光或者友盟。授权一次即可。对于注册Tocken,只需把环信及激光/友盟 写在一个方法里就可以的。小编曾经没注意那么多,掉进坑里,离线发送一条消息,环信收到俩次一样的推送消息,查了很多资料也很郁闷,最后把环信设计到的推送代码直接删除,都写在了appdelegate文件下。问题解决。原因就是多次授权推送。

    推送设置:

    EMPushOptions *options = [[EMClient sharedClient] pushOptions];

    options.displayStyle = EMPushDisplayStyleSimpleBanner;//样式设置

    [[EMClient sharedClient] updatePushOptionsToServer];

    2. 用户头像与昵称设计管理

        也就是对消息进行属性扩展

    +(NSMutableDictionary*)getMyMsgExt:(NSDictionary *)msgExt{

    UserCacheInfo *user = [UserCacheManager myInfo];

    NSMutableDictionary *extDic = [NSMutableDictionary dictionaryWithDictionary:msgExt];

    [extDic setValue:user.userId forKey:kChatUserId];

    [extDic setValue:user.avatarUrl forKey:kChatUserPic];

    [extDic setValue:user.nickName forKey:kChatUserNick];

    return extDic;

    }

    EMMessage *message;

    message.ext = [UserCacheManager getMyMsgExt:messageExt];在发送消息前扩展,包涵用户ID 用户头像 用户昵称。如果还需要别的属性可以进行追加比如加一些自定义的标示。

    3.对于整个环信来说,核心功能也就这些。发消息,推送设置,用户的增删及用户的头像及昵称。注意Core Data文件下的存储文件,里面都有说明。如有问题可以发信小编。 我也很想一句代码集成环信。但终没能实现,有些分散。并没有总结出更好的方式出来。网速较慢,时间有限。积累问题逐步更新。demo 地址:https://github.com/mengmakies/ChatDemo-UI3.00-Simple。  注意:由于Git不支持上传大于100MB的文件,所以项目源码中不包含 HyphenateFullSDK 和HyphenateSDK动态库,下载地址https://pan.baidu.com/s/1c1RsUrA,解压后后将HyphenateFullSDK和HyphenateSDK文件夹拷贝到目录【/ChatDemo-UI3.0-Sample/ChatDemo-UI3.0/ChatSDK/】下才能正常运行。

    相关文章

      网友评论

          本文标题:即时通信:环信3.0以后的版本使用

          本文链接:https://www.haomeiwen.com/subject/daxoyxtx.html