阐明

1.环信音视频和声网音视频 是两个不同的体系,所以假如要切换的话,需求集成声网的sdk,环信音视频的sdk能够直接废弃

2.文章会介绍如何用声网的音视频跑通demo,能够了解整个音视频通话的流程,

3.文章会介绍现已集成了环信im功能如安在集成声网增加音视频功能

前提条件

1.有环信开发者账号和声网的开发者账号

2.macOS体系,安装了xcode集成环境

跑通Demo

1.下载iOS Demo 地址:www.easemob.com/download/im

手把手教你从零开始集成声网音视频功能(iOS版)

2.我这边下载的是4.0.3 版本,假如你的Xcode 版本运转demo报错的话,先找到podfile文件打开注释,并加上:config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0’,如下图 ,在pod install

手把手教你从零开始集成声网音视频功能(iOS版)

3.为了测试便利能够先把这个appkey 配置成自己的

手把手教你从零开始集成声网音视频功能(iOS版)

4.接连点击版本号,切换成账号密码登录,到此im部分完结

手把手教你从零开始集成声网音视频功能(iOS版)

建立App Server生成声网token

1.参阅文档建立APPserver:docportal.shengwang.cn/cn/live-str… 全部仿制,替换成自己的appid 和 appCertificate

手把手教你从零开始集成声网音视频功能(iOS版)

2.假如出现Starting server at port 8082 阐明建立成功

手把手教你从零开始集成声网音视频功能(iOS版)

3.在下图这里替换成自己声网的appid

手把手教你从零开始集成声网音视频功能(iOS版)

4.在callDidRequestRTCTokenForAppId 这个办法做一下修正,主要是换成你自己的服务器生成的token,

手把手教你从零开始集成声网音视频功能(iOS版)

5.以上修正完结就能够进行音视频通话了,假如通话正常能够去声网的控制台,看到通话记录。

手把手教你从零开始集成声网音视频功能(iOS版)

到此祝贺你跑通Demo

把声网集成到已有项目中

阐明:假如你之前集成环信的音视频,那么就直接废弃掉,从头集成声网音视频,我这边从新建项目开端

1.新建项目,并增加相应的库,pod install 一下,增加麦克风和摄像头权限

手把手教你从零开始集成声网音视频功能(iOS版)

2.AppDelegate 文件里边进行环信初始化

手把手教你从零开始集成声网音视频功能(iOS版)

3.使用xib 创立几个控件,并进行绑定

手把手教你从零开始集成声网音视频功能(iOS版)

4.在 login点击事件调登录操作,登录成功之后进行EaseCallManager 类的初始化

注意:EaseCallManager只能在登录成功之后才干初始化,要不然建议通话会报错

手把手教你从零开始集成声网音视频功能(iOS版)

5.实现EaseCallDelegate署理办法,需求在callDidRequestRTCToken回调中,获取APPserver的token,并设置,如下图

手把手教你从零开始集成声网音视频功能(iOS版)

6.在call办法建议一对一视频通话,如下图

手把手教你从零开始集成声网音视频功能(iOS版)

至此 代码完结,能够运转在两台设备上查看效果,假如能正常进行视频通话,那么祝贺你集成成功

总结

1.在环信控制台创立im项目,拿到appkey

2.在声网控制台创立音视频项目拿到appid 和 appCertificate

3.参阅声网给的go语言的APPserver示例,全部仿制下来,填上声网的appid 和 appCertificate,就直接运转

4.创立iOS项目,集成

pod 'AgoraRtcEngine_iOS/RtcBasic' //声网音视频库

pod 'HyphenateChat', '~> 4.0.3' //环信im库

pod 'EaseCallKit' //环信IMSDK作为信令封装的声网音视频SDK通话带UI组件库

这三个库

5.AppDelegate 文件里边进行环信初始化填上环信的appkey

6.登录成功的办法里边初始化EaseCallManager

7.建议视频通话邀请

8.邀请方和被邀请方都会走 func callDidRequestRTCToken(forAppId aAppId: String, channelName aChannelName: String, account aUserAccount: String, uid aAgoraUid: Int) 这个参加音视频通话频道前触发该回调,在这个回调函数里边获取各自的声网token,然后调用setRTCToken:channelName:办法将token设置进来

结束

参阅链接

注册环信:console.easemob.com/user/regist… 官方Demo下载:www.easemob.com/download/im 更多集成教程:www.imgeek.net/video/