• 李洪强iOS开发之-环信02_iOS SDK 介绍及导入


    李洪强iOS开发之-环信02_iOS SDK 介绍及导入

    iOS SDK 介绍及导入


    环信 SDK 为用户开发 IM 相关的应用提供的一套完善的开发框架。包括以下几个部分:

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

    用户可以基于我们提供的 Demo 实现自己的应用,也可以基于 SDK 开发自己应用。

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

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

    注意:如果您是从 SDK2.x 升级到 3.0,可以参考环信 SDK 2.x到3.0升级文档

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

    下载SDK

    通过 Cocoapods 下载地址:

    不包含实时语音版本 SDK(HyphenateSDK),引用时 #import <HyphenateSDK/EMSDK.h>

    pod 'HyphenateSDK', :git => 'https://github.com/easemob/hyphenate-cocoapods.git'

    包含实时语音版本 SDK(HyphenateFullSDK),引用时 #import <HyphenateFullSDK/EMSDKFull.h>

    pod 'HyphenateFullSDK', :git => 'https://github.com/easemob/hyphenate-full-cocoapods.git'

    直接下载:

    您可以到环信官网下载环信 SDK。

    到此您已经下载好了 SDK,下面开始学习 SDK 的集成使用吧!

    注: 由于 iOS 编译的特殊性,为了方便开发者使用,我们将 i386 x86_64 armv7 armv7s arm64 几个平台都合并到了一起,所以 SDK 的静态库(.a文件)比较大。实际集成编译出 ipa 后,根据调用功能的多少,实际只会增加 2MB 左右。

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

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

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

    • lib 静态库,包含静态库:libHyphenateSDK.a/libHyphenateFullSDK.a(包含实时语音)。
    • lib/3rdparty 静态库,包含静态库:libcrypto.a,libcurl.a,libssl.a (从SDK中分离出来第三方依赖静态库,避免与其它SDK冲突)
    • include 包含 SDK 的头文件。

    主要介绍下 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。

    设置工程属性

    第 1 步:向Build Phases → Link Binary With Libraries 中添加依赖库。

    iOS_AddFramework icon

    SDK 依赖库有:

    • CoreMedia.framework
    • AudioToolbox.framework
    • AVFoundation.framework
    • MobileCoreServices.framework
    • ImageIO.framework
    • libc++.dylib
    • libz.dylib
    • libstdc++.6.0.9.dylib
    • libsqlite3.dylib

    (如果使用的是 xcode7,后缀为 tbd。)

    SDK 包含实时语音依赖库有:

    • CoreMedia.framework
    • AudioToolbox.framework
    • AVFoundation.framework
    • MobileCoreServices.framework
    • ImageIO.framework
    • libc++.dylib
    • libz.dylib
    • libstdc++.6.0.9.dylib
    • libsqlite3.dylib
    • libiconv.dylib

    (如果使用的是 xcode7,后缀为 tbd。)

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

    以上步骤进行完后,编译工程。如果没有报错,恭喜你,集成 SDK 成功,可以进行下一步了。

  • 相关阅读:
    vb动态创建控件
    100多个很有用的JavaScript函数以及基础写法汇总
    CodeFile与CodeBehind的区别
    asp.net防sql注入问题
    .NET创建目录和文件
    Asp.Net判断字符是否是数字
    Asp.Net随机中文汉字验证码
    禁用表单自动提示complete
    如何隐藏vs2005的起始页
    Asp.Net enableEventValidation
  • 原文地址:https://www.cnblogs.com/LiLihongqiang/p/5729483.html
Copyright © 2020-2023  润新知