前期在项目中一直使用的是环信,但是最近好像环信的服务器不是太稳定,每每到4点后就开始登录失败.所以就产生了相对口碑较好点的融云的想法.

前面是使用cocoapods导入的环信第三方库,在融云这里我也选择了同样的方式,方便省事.

cocoapods版本:1.3.1

//环信导入部分
pod 'Hyphenate'
pod 'EaseUI', :git => '[https://github.com/easemob/easeui-ios-hyphenate-cocoapods.git](https://github.com/easemob/easeui-ios-hyphenate-cocoapods.git)'
//融云导入部分
pod 'RongCloudIM/IMLib', '~> 2.8.3'
pod 'RongCloudIM/IMKit', '~> 2.8.3'

profile文件中添加荣誉导入部分,然后使用命令

pod install

结果导致如上图

 

原因分析:项目里有类库文件产生conflict(冲突),文件名为:libopencore-amrnb.a.究其原因,是因为融云和环信都有导入这个同名的类库,而本版本的cocoapods不能解决这个重复文件的问题.包括我升级到下一版本1.4.rc都没有得到解决.

解决办法:

其一,回退cocoapods版本.

先使用命令,展示列表信息

gem list

列表信息

 

再删除现有的版本的cocoapods

sudo gem uninstall cocoapods

选择删除那个版本

 

我选择3,全部删除.然后再会弹出该提示,是否有其他指令

 

 

此处选择y,并继续输入指令

sudo gem uninstall cocoapods-core

删除成功

 

此时再开始安装旧版本(我用了1.0.1,可以解决问题)

sudo gem install cocoapods -v 1.0.1

安装成功

其二,移除不需要使用的库,再加入后来的库

可以直接在profile文件中,将环信或者融云的导入指令注释掉.
再输入指令

pod update

就可以移除已经注释掉的库.然后再写入需要的库名,后输入指令

pod install

即可成功安装后来需要的那个库,但是原来的库不能够再进行安装.

其三,在融云或者环信中找到libopencore-amrnb.a这个库文件,先移到废纸篓,然后就可以在本版本中导入另一个第三方.为了不影响,也可以在导入成功后,把移入废纸篓的文件放回原处.

环信的该文件所在


融云的该文件所在

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐