iOS集成环信(二)

iOS SDK介绍及导入

环信SDK为用户开放IM相关的应用提供的一套完善的开发框架。

iOS集成环信(二)_第1张图片

  • SDK_Core为核心的消息同步协议实现完成与服务器之间的信息交换。
  • SDK是基于核心协议实现的完整的IM功能,实现了不同类型消息的收发,会话管理,群组,好友,聊天室等功能。
  • EaseUI是一组IM相关的UI控件,旨在帮助开发者快速集成环信sdk。

SDK采用模块化设计,每一模块的功能相对独立和完善,用户可以根据自己的需求选择使用下面的模块。

iOS集成环信(二)_第2张图片

  • EMClient是SDK的入口,主要完成登录,退出,连接管理等功能。也是获取其他模块的入口。
  • EMChatManagr管理消息的收发,完成会话管理等功能。
  • EMContactManager负责好友的添加删除,黑名单的管理。
  • EMGroupManager负责群组的管理,创建,删除群组,管理群组成员等功能。
  • EMChatroomManager负责聊天室的管理。

集成IOS SDK

在您阅读此文档时,我们假定您已经具备了基础的iOS应用开发经验,并能够理解相关基础概念。

下载SDK

我是通过环信官方网站下载最新的SDK,下载的SDK有两个分别是:

  • 不包含实时语音版本SDK(HyphenateSDK);
  • 包含实时语音版本SDK(HyphenateFullSDK)。

注意: 这两个SDK不同都导入项目中,只能导入其中的一个,两个导入的话在编译期间会报 duplicate冲突。

SDK 目录讲解

1.从官网上下载下来的包中分别为如下五部分:

  • 环信 iOS HyphenateSDK 开发使用(不包含实时通话功能)
  • 环信 iOS HyphenateFullSDK开发使用(包含实时通话功能)
  • 环信 iOS doc SDK 相关API 文档
  • 环信 iOS EaseUI 工程源码
  • 环信 iOS chatdemo-ui-3.xx.ipa打包的ipa

2.iOS HyphenateSDK/HyphenateFullSDK中有两个子文件夹:include、lib,请不要修改这些文件夹的任何东西,下面依次介绍这两个子文件夹。

  • lib静态库,包含静态库:libHyphenate.a/libHyphenateFullSDK.a(包含实语音)。
  • include包含sdk的头文件。

3.主要介绍include,所有的接口都在这个文件夹中。
具体接口讲解请转到Apple Docs

第三方库介绍

easeUI中用到的第三方库:

  • MWPhotoBrowser:图片处理库,浏览显示
  • MJRefresh:用于页面刷新
  • MBProgressHUD:用于提示加载刷新
  • libopencore-amrnb.a,libopencore-amrwb.a:用于amr与wav之间的转化

demo中用到的第三方库:

  • Parse.framework,Bolts.framework:demo中的用户信息存储在Parse,这两个库是Parse所需要的库,开发者如果没用Parse存储,不要复制到自己项目中
  • libMobClickLibrary.a:友盟相关的库,用于环信demo基本信息的统计,开发者不用或者已有别的版本的库不要复制到自己项目

配置工程

导入SDK

将下载好的SDK文件夹(HyphenateSDK)拖入到项目中,并勾选Destination.

iOS集成环信(二)_第3张图片

设置工程属性

向Build Phases -> Link Binary With Libraries 中添加依赖库

iOS集成环信(二)_第4张图片

SDK包含实时语音依赖库有

  • CoreMedia.framework
  • AudioToolbox.framework
  • AVFoundation.framework
  • MobileCoreServices.framework
  • ImageIO.framework
  • SystemConfiguration.framework
  • libc++.tbd
  • libresolv.tbd
  • libz.tbd
  • libstdc++.6.0.9.tbd
  • libsqlite3.tbd
  • libiconv.tbd

SDK不支持bitcode,向Build Settings → Linking → Enable Bitcode中设置NO。

你可能感兴趣的:(ios,sdk,环信)