集成IOS 环信SDK
集成IOS SDK
在您阅读此文档时,我们假定您已经具备了基础的 iOS 应用开发经验,并能够理解相关基础概念。
下载SDK
通过Cocoapods下载地址
不包含实时语音版本SDK(EaseMobClientSDKLite),引用时 #import <EaseMobSDK/EaseMob.h>
pod 'EaseMobSDK', :git => 'https://github.com/easemob/sdk-ios-cocoapods.git'
包含实时语音版本SDK(EaseMobClientSDK),引用时 #import <EaseMobSDKFull/EaseMob.h>
pod 'EaseMobSDKFull', :git => 'https://github.com/easemob/sdk-ios-cocoapods-integration.git'
直接下载
您可以到环信官方网站下载环信 SDK。
到此您已经下载好了SDK,下面开始学习SDK的集成使用吧!
注: 由于iOS编译的特殊性,为了方便开发者使用,我们将i386 x86_64 armv7 armv7s arm64几个平台都合并到了一起,所以SDK的静态库(.a文件)比较大。实际集成编译出ipa后,根据调用功能的多少,实际只会增加2MB左右。
SDK目录讲解
1. 从官网上下载下来的包中分为如下四部分:
- 环信 iOS SDK 开发使用
- 环信 iOS release note 更新说明
- 环信 iOS UIDemo 工程源码
- 环信 iOS UIDemo.ipa 打包的ipa
2. IOS SDK中有三个子文件夹:include、lib、resources,请不要擅自修改这些文件夹的任何东西,下面依次介绍这三个子文件夹。
- lib 静态库,包含连个静态库libEaseMobClientSDK.a和libEaseMobClientSDKLite.a。libEaseMobClientSDKLite.a不包含实时语音功能,libEaseMobClientSDK.a包含所有功能。如果你的app中不需要实时语音功能,删掉libEaseMobClientSDK.a只使用libEaseMobClientSDKLite.a即可。
- resources sdk的bundle,包含旧版sdk的数据库、消息提示音,sdk配置文件。其中sdk配置文件已加密,旧版sdk数据库几乎没什么实质作用。
- include 包含sdk的头文件。
3. 主要介绍下include,所有的接口都在这个文件夹中。
- EaseMobClientSDK/EaseMobClientSDKLite 包含在项目中要引用的总头文件,即在代码中只需#import”EMSDKFull.h”或#import”EaseMob.h”即可调用所有对应的api。
- CallService 包含实时语音相关的接口
- ChatService 包含聊天相关的接口,比如注册、登录、退出、单聊、群聊、群组等
- Utility 包含DeviceManager和ErrorManager。DeviceManager硬件相关接口,ErrorManager错误码定义
具体接口讲解请转到Apple Docs
注:
- include包含5个子文件夹:CallService、ChatService、EaseMobClientSDK、EaseMobClientSDKLite、Utility。如果无需实时语音功能,将CallService和EaseMobClientSDK删掉即可。
- 类似EM@Manager命名格式的文件夹的内部结构都是相似的。delegates文件夹包含各种代理接口,internal文件夹包含各种协议的声明,types文件夹包含各种实例的声明。
配置工程
1. 导入SDK
将下载好的SDK文件夹(EaseMobSDK)拖入到项目中,并勾选上Destination
2. 设置工程属性
2.1. 向Build Phases → Link Binary With Libraries 中添加依赖库
SDK依赖库有
- MobileCoreServices.framework
- CFNetwork.framework
- libEaseMobClientSDKLite.a
- libsqlite3.dylib
- libstdc++.6.0.9.dylib
- libz.dylib
- libiconv.dylib
- libresolv.dylib
- libxml2.dylib
2.2. 向Build Settings → Linking → Other Linker Flags 中 添加-ObjC(注意大小写)
2.3. 如果项目中使用-ObjC有冲突,可以添加-force_load来解决。
格式为: -force_load[空格]EaseMobSDK/lib/libEaseMobClientSDKLite.a(静态库的路径)
- step1. 先添加一个-force_load
- step2. 将静态库拖动到上一步添加的-force_load下面
- step3. 最终效果
编译工程
以上步骤进行完后,编译工程,如果没有报错,恭喜你,集成sdk成功,可以进行下一步了。
转载于:https://www.cnblogs.com/wq-gril/p/4874926.html
集成IOS 环信SDK相关推荐
- 李洪强iOS开发本人集成环信的经验总结_01环信SDK的导入
李洪强iOS开发本人集成环信的经验总结_01环信SDK的导入 01 - 直接在项目中导入SDK和一些静态库 这个时候,没有错误的编译没有错误的话,就说明SDK已经配置成功 还有一种方法是用cocoap ...
- 即时通信---环信SDK(IOS)使用教程
一. 提前准备 注册环信即时通讯云账号 下载iOS的环信SDK 登陆到管理后台 在我的应用中创建一个应用 在苹果的个人开发中心创建一个推送证书(当然不创建也没用关系,只是不能推送消息而已) 创建完证书 ...
- iOS 基于环信SDK实现即时通讯-文字聊天
这里介绍集成环信SDK3.0自定义聊天页面,后面有练习项目地址 首先到环信官网下载环信SDK.由于后续会实现语音.视频,我这里使用的是带有语音的SDK 下载完成后把HyphenateFullSDK文件 ...
- Android(9) 环信sdk手动集成(非添加easeui依赖快速集成)
@先看看效果是不是自己想要的吧@ 准备:参考官方文档,先注册并创建应用 (这里再分享一下利用easeui快速集成的方法吧 ---> https://blog.csdn.net/qq_38 ...
- 环信即使通讯 php git,iOS即时通讯(三)- 环信SDK的导入
注册环信账号 打开环信官方网站地址,注册选择即时通讯云,然后注册个人客户. 注册个人客户.png 提交后,打开邮箱验证环信注册,验证成功后即注册成功. 注册成功.png 创建应用 注册成功,登录环信即 ...
- android-使用环信SDK开发即时通信功能及源码下载
最近项目中集成即时聊天功能,挑来拣去,最终选择环信SDK来进行开发,选择环信的主要原因是接口方便.简洁,说明文档清晰易懂.文档有android.ios.和后台服务器端,还是非常全的. 环信官网:htt ...
- 使用环信sdk做一个简单的聊天APP
使用环信sdk做一个简单的即时聊天APP,实现简单的通讯 感悟 在很早以前就想做一个简单的即时聊天app.可能自己对即时聊天的三方SDK了解的不是特别深,在进行了一段时间的学习以后感觉自己的能力达到了 ...
- 基于环信sdk在uni-app框架中快速开发一款多平台社交Demo
说在前面:此款 demo 是基于 环信sdk 开发的一款具有单聊.群聊.聊天室.音视频等功能的应用.在此之前我们已经开发完 Vue.react(web端).微信小程序.这三个热门领域的版本,如有需要源 ...
- 【开源项目】使用环信SDK搭建在线教学场景(含三端源码下载)
2021年在线教育行业如火如荼,所谓人人为我,我为人人,为了方便教育行业的小伙伴们更好地使用环信SDK,我搭建了一个在线教学开源项目"环环教育",一期覆盖1对1互动教学.在线互动小 ...
最新文章
- mysql快速迁移数据sql_使用Navicat Premium工具快速迁移数据方法 适用于mysql及mssql数据库...
- i2c--ioctl--主机控制器驱动(i2c_adapter)--外设驱动(i2c_driver)
- [POI2007]MEG-Megalopolis
- mysql5.0.27+apache2.0.59+php5.2.0+phpMyAdmin-2.6.4-pl3
- python加载机制_Python 模块的加载顺序
- Spring IOC学习心得之Bean对IOC容器的感知
- 大唐电信[600198]股票
- ANDROID笔记:Activity之间的传值
- 文本、词相似度论文阅读笔记
- (六)授权(下):自定义permission
- [Hadoop]Hive r0.9.0中文文档(二)之联表查询Join
- matlab prn文件,PRN格式文件 如何打开PRN文件 PRN是什么格式的文件 用什么打开 - The X 在线工具...
- Windows快捷命令
- python 描述性分析_python数据分析:美国巴尔的摩16年公务员工资数据集描述性分析...
- Unity插件 - MeshEditor(二) 模型网格编辑器(高级)
- 将球放入盒中的方法数总结(球盒模型问题)
- C练题笔记之:Leetcode-1427. 字符串的左右移
- EasyNLP发布融合语言学和事实知识的中文预训练模型CKBERT
- arduino点阵声音频谱_参赛-使用Arduino制作32频段音频(音乐)频谱分析仪
- 运用流体布局的html代码,jquery 流体布局插件:Waterfall
热门文章
- 这一周,全世界都兴奋麻了!
- RUNJS优秀代码搜集
- 数据结构课程设计 班级通讯录
- pyqt5 最小化 系统托盘_PyQt5 系统托盘
- htmlparser 获取html,利用htmlparser进行网页信息的抽取
- 线性代数MIT 18.06 记录(二十)克拉默法则、逆矩阵、体积
- uni-app微信小程序接入皮卡智能api进行抠图操作
- SpringRetry
- STM32中的中断向量表
- 阿里百川V6安全图,uniapp使用阿里百川SDK V6安全图唤醒淘宝APP 阿里百川新版本打开淘宝领券页面/渠道备案,uniapp对接淘宝联盟等等超级详细