iOS 环信集成问题(连文档都不说明的坑。。)
首先,关于环信SDK的下载和一些依赖库的添加,在此我就不做详细介绍,(http://www.easemob.com/download/im)附上环信官网文档,可以看一下,上面都可以下载,也有相关配置介绍。
今天主要说一下,环信集成遇到的各种坑,各种问题,有的连文档都不说明的坑。。(主要是讲解完全集成环信,UI的聊天界面,单聊功能也是环信的这种情况)

各位可能刚在官网下载下来ChatDemo-UI3.0这个版本,会发现HyphenateFullSDK和官网文档有个不一样的地方,少了个文件(libHyphenateSDK.a)

而且你也可以看到,文档上面也说明有导入这个依赖库,这里你不用管,继续往下做就行,因为后面你会发现,根本就没有那个.a文件。接下来就是全部工作做完,你以为你要见证奇迹的时候了,(我主要说导入SDK之后编译没有错的情况,如果有问题的话,文档上有说明,百度上也有,我在此说的是文档没有说明的原因)。然后你会迫不及待的运行整个项目,但是你会发现出现一个错误:
dyld: Library not loaded: @rpath/Hyphenate.framework/Hyphenate
Referenced from: /Users/liangyi/Library/Developer/CoreSimulator/Devices/F3F0CB24-F891-489D-B71F-1AA6DA17832C/data/Containers/Bundle/Application/8D4D4F2E-A19F-4590-BE80-41403C735448/EMDemo.app/EMDemo
Reason: image not found
你看到最后一句感觉是少了一个图片,这个时候你就懵逼了,为啥导入环信会出现少了个图片呢?!你各种百度,估计也找不到问题的所在

你搜索的结果应该也是这样吧,而且你点开之后基本上里面全是英文,你更是一脸懵逼,可能你也会发现有人说把依赖库后面的status的状态改一下就能解决问题,把required改成optional,你也许会把Hyphenate.framework后面status给改了,然后你运行发现没错了,心里百般激动,但是问题又来了,你会发现,不能发送消息了,然后你各种百度,各种问,而且还感觉和文档上说的一样做出来的,但是就是不能发消息,也许找不到问题的所在,最后你会发现EaseMessageViewController这个文件里的_conversation = [[EMClient sharedClient].chatManager getConversation:conversationChatter type:conversationType createIfNotExist:YES];这个方法里的_conversation=nil,永远都是nil,这样肯定不能进行实时聊天的,这个是创建会话对象的方法,这个为空,还玩个卵。
最后说的就是解决的方案,如果你细心你会发现你的工程和demo的工程有个地方不一样

你会看到demo那里多个Hyphenate.framework,没错这里也要添加一个Hyphenate.framework(这就是连文档都不说明的地方),而且你也找不到原因,然后如果你之前把依赖库的status修改了,别忘了改回去,只要上面空白的地方加入Hyphenate.framework这个依赖库,整个环信单聊功能就完成了。
(初来乍到,在此只是本人开发中遇到的问题,拿来和各位大神分享一下,如果有不详细的地方,可以留言说出来,彼此相互学习,谢谢)
iOS 环信集成问题(连文档都不说明的坑。。)的更多相关文章
- iOS 环信集成项目应用
环信iOS端3.0版本集成记录--聊天界面篇 环信离线推送证书... 1,环信处在后台的时候,消息的接收与推送 离线发推送 配置属性 EMCallOptions *options = [[EMClie ...
- iOS 环信集成单聊界面,出现消息重复问题
解决办法很简单,数据重复就是EaseMessageViewController和ChatViewController重复调用了这个吧?//通过会话管理者获取收发消息 [self tableViewDi ...
- SpringBoot集成Swagger2在线文档
目录 SpringBoot集成Swagger2在线文档 前言 集成SpringBoot 登录接口文档示例 代码 效果 注解说明 总结 SpringBoot集成Swagger2在线文档 前言 不得不说, ...
- 集成IOS 环信SDK
集成IOS SDK 在您阅读此文档时,我们假定您已经具备了基础的 iOS 应用开发经验,并能够理解相关基础概念. 下载SDK 通过Cocoapods下载地址 不包含实时语音版本SDK(EaseMobC ...
- 环信集成 2---基于环信Demo3.0,实现单聊功能
这几天在做环信,所以把环信相关的东西拿过来,做个系统点的东西 注意: 这里Demo集成的是带有实时语音功能的(libEaseMobClientSDK.a). 环信库是直接拖拽EaseMobSDK文件夹 ...
- iOS: 环信的推送
原文:http://m.blog.csdn.net/article/details?id=38824551 1.先创建一个apns证书,链接如下 http://developer.easemob.co ...
- SpringCloud微服务实战——搭建企业级开发框架(六):使用knife4j集成Swagger2接口文档
knife4j是为集成Swagger生成api文档的增强解决方案,前后端Java代码以及前端Ui模块进行分离,在微服务架构下使用更加灵活, 提供专注于Swagger的增强解决方案,不同于只是改善增强前 ...
- ios在项目中打开word文档、ppt等总结
最近在项目开发中遇到下载附件文档预览需求,在这里总结一下我的实现方法,本文最后会附带我写的demo下载地址 这里我总结了三种实现方法(1)用webView预览(2)通过UIDocumentIntera ...
- iOS 环信消息撤回
这两天在做环信的消息回撤,在网上找了许久没有这种案例,之后官方的一些方法,但是自己做,还是需要花点时间去整理,所以我决定等我把这个做好之后,分享给大家,如果做的不好多多指教,谢谢- 首先要实现消息撤回 ...
随机推荐
- Solr6.5配置中文分词器
Solr作为搜索应用服务器,我们在使用过程中,不可避免的要使用中文搜索.以下介绍solr自带的中文分词器和第三方分词器IKAnalyzer. 注:下面操作在Linux下执行,所添加的配置在windo ...
- uiautomator +python 实现安卓自动化
很多人看到这个题目我相信他们可能会说,uiautomator不是java开发的吗?python怎么用呢,其实呢 ,一开始我也是这么想的,看了金阳光老师的视频,也是用java写的,我表示不服,我要科学上 ...
- 【有意思的BUG】默认置灰的属性的值传递
数据由Client发送给Server,如下图所示,Server在收到请求后会响应Client. 比如Client发送给Server一组数据:Name:sean&Hobby:movies& ...
- VMvare 虚拟网卡vmnet1 and vmnet8
VMvare 虚拟网卡vmnet1 and vmnet8---------------------------------2013/11/03 在使用VMware Workstation创建虚拟机时, ...
- 安装atlas后执行hive命令报错
在集群中安装atlas,在安装atlas的节点上执行hive -e "show databases;" 正常,但是在集群中其他节点上执行hive -e "show dat ...
- github的基本使用
1. 在github官网注册账号 https://github.com/ 2. 下载git for window https://git-for-windows.github.io/ 3. gi ...
- Ubuntu安装iNOde
学校使用的是Inode客户端认证上网的.而且还只能使用iNodeSetup3.60-6210版本进行连接,之前使用Ubuntu 32位版本,可以完美地安装并能够连接到网站.由于我的机子是64位的机子, ...
- python自动化运维三:数据报表定制以及scapy模块介绍
p { margin-bottom: 0.25cm; line-height: 120% } a:link { } Excel也是报表的一个重要的工具.这里首先接受下excel的操作.先来看一个简单的 ...
- php基础。php与js的不同
1 . PHP拼字符串用的是点. js用+号. 2. php文件要放在wamp文件里面的www里面. 3. php与js的嵌入方式相同,只是嵌入的标记不一样. 4. php输出语法用echo.可 ...
- Fedora删除旧版本内核
由于Fedora升级非常快,因此非常有必要清除陈旧的内核,否则的话,每次登录系统会出现多个引导项,看着烦人也占用内存: 1.查看当前使用的内核 [root@w ~]# uname -r 4.9.14- ...