快速集成
为满足已集成三方信令服务的 App 的需求,声网 1v1 私密房还提供自定义三方信令方案。本文介绍如何将声网 CallAPI
的源码和三方信令模块集成到你的项目中,并进行必要的项目设置。
前提条件
开始前,请确保满足如下前提条件:
集成步骤
1. 创建项目
如果你没有 iOS 项目,参考如下步骤先创建一个。如果本地已有项目,可以跳过本步骤,直接参考 2. 添加 CallAPI。
-
参考 Create a project 在 Xcode 中创建一个项目。
-
为你的项目设置自动签名。
-
设置部署你的 App 的目标设备。
-
在项目导航栏中打开
info.plist
文件,编辑属性列表,添加 1v1 私密房所需的录音和摄像头权限。key type value Privacy - Microphone Usage Description String 使用麦克风的目的,例如: for 1v1
。Privacy - Camera Usage Description String 使用摄像头的目的,例如: for 1v1
。
2. 添加依赖
参考如下步骤将不含信令相关实现的 CallAPI
添加到项目中。
-
下载或克隆
CallAPI
源码。 -
将
iOS
下的CallAPI
文件夹和CallAPI.podspec
文件拷贝到项目文件夹中,和Podfile
文件同级。 -
在
Podfile
文件中添加如下行,将CallAPI
添加到项目中。由于使用了第三方的信令管理类,你可以使用剪裁方式集成:Rubypod 'CallAPI/WithoutRTM', :path => 'CallAPI.podspec'
注意以该剪裁方式集成的
CallAPI
中不包含默认的 RTM 信令实现方案,你需要自行实现。 -
打开 Terminal,执行如下命令,将
CallAPI
代码集成进你的项目中:Rubypod install
3.(可选)检查版本兼容性
如果你的项目之前集成过声网的 RTC SDK,需要确保 SDK 的版本号与 CallAPI
兼容,即 RTC SDK 的版本号不低于 4.1.1.26。
如果版本号与 CallAPI
不兼容,可以直接在 CallAPI.podspec
文件中修改对应的 SDK 版本:
s.dependency 'AgoraRtcEngine_Special_iOS', '4.1.1.26'
4. 实现并集成自定义信令
你需要将三方信令的相关功能进行封装,实现信令管理、登录登出、Token 续期等能力,然后添加进项目中。具体的封装方法可以参考实现自定义信令。
为方便体验与参考,声网提供一个基于环信即时通讯 SDK 包装的,实现了 1v1 私密房需要能力的 CallEasemobSignalClient
类。
由于自定义的信令管理类基于三方信令 SDK 实现,且只实现了 CallAPI
需要的信令协议和消息收发功能,因此 CallEasemobSignalClient
仅供参考,不保证其可用性和完整性。
参考如下步骤将 CallEasemobSignalClient
类导入到项目中:
-
在
Podfile
文件中添加如下行,添加CallEasemobSignalClient
:Shellpod 'HyphenateChat'
-
在 Terminal 中执行
pod install
,将HyphenateChat
集成进项目中。
后续步骤
完成集成后,根据业务需要参考如下文档,将相应的功能添加到你的项目中: