使用ZEGO SDK零基础搭建iOS语音聊天应用
发布日期:2021-06-29 03:52:10 浏览次数:2 分类:技术文章

本文共 2090 字,大约阅读时间需要 6 分钟。

今年以来,语音聊天室玩法兴起,众多社交泛娱乐平台已纷纷跟进。音视频云服务商即构科技提供了语音聊天室解决方案,包含语音连麦、麦位管理、一站式内容审核等整套功能,并提供了体验Demo及免费源码,让开发者可以零基础快速集成。

上一篇我们已经介绍过了Android端的实现方式,下面我们来分享iOS端的实现流程。

语音聊天房应用的实现,主要由业务系统和移动/Web 客户端组成。其中业务系统需要实现房间管理、麦位管理、音频流和麦位关联关系管理等功能,客户端需要实现登录/登出房间、拉流/停止拉流、上麦推流/停止推流下麦等功能,还可以根据需要使用房间信息通道实现 IM 功能。

iOS端的功能说明及实现流程与Android端无太大差别,可点击第一篇的内容查看

 

下面具体来看操作步骤~

1、创建/销毁引擎

在使用 Express Audio SDK 之前,需要初始化 Express Audio SDK。由于初始化操作 SDK 内部处理的流程较多,建议开发者在 App 启动时进行。

  • 创建引擎”
// 填写 appID 和 appSignunsigned int appID = ;  // 请通过官网注册获取,格式为:1234567890NSString *appSign = ;  //请通过官网注册获取,格式为:@"0123456789012345678901234567890123456789012345678901234567890123"(共64个字符)// 创建引擎,使用测试环境,通用场景接入,并注册 self 为 eventHandler 回调代理// 不需要注册回调的话,eventHandler 参数可以传 nil,后续可调用 "-setEventHandler:" 方法设置回调代理[ZegoExpressEngine createEngineWithAppID:appID appSign:appSign isTestEnv:YES scenario:ZegoScenarioGeneral eventHandler:self];
  • 销毁引擎
[ZegoExpressEngine destroyEngine:nil];

 

2、设置事件回调

可以根据场景需要,在初始化 SDK 后监听想要关注的事件通知,比如用户加入房间,房间流更新等等。

// 遵循 ZegoEventHandler 协议以处理您关心的事件回调@interface ViewController () 
// ······@end@implementation ViewController// ······// 举例:监听房间内流数量变更的通知- (void)onRoomStreamUpdate:(ZegoUpdateType)updateType streamList:(NSArray
*)streamList roomID:(NSString *)roomID { // ······}@end

 

3、登录/登出房间

用户上麦推流之前,需要先登录房间,在收到登录房间成功的回调后可以直接调用 loginRoom 接口进行推拉流操作。相关源码片段演示如下,仅供参考:

// 创建用户对象ZegoUser *user = [ZegoUser userWithUserID:@"user1"];// 开始登陆房间[[ZegoExpressEngine sharedEngine] loginRoom:@"room1" user:user];
// 登出房间[[ZegoExpressEngine sharedEngine] logoutRoom:@"room1"];
 

4、开始/停止推流

调用 startPublishingStream 接口,可以向远端用户发送本端的音视频流。如果不需要继续推流,请调用 stopPublishingStream 停止推流。

// 开始推流[[ZegoExpressEngine sharedEngine] startPublishingStream:@"stream1"];
// 停止推流[[ZegoExpressEngine sharedEngine] stopPublishingStream];
 

5、拉流/停止拉流

调用 startPlayingStream 进行拉流,如果不需要继续拉流,请调用 stopPlayingStream 停止拉流。

// 开始拉流[[ZegoExpressEngine sharedEngine] startPlayingStream:@"stream1"];
// 停止拉流[[ZegoExpressEngine sharedEngine] stopPlayingStream:@"stream1"];
 

以上就是基于ZEGO SDK 实现iOS语音聊天应用的流程,即构还提供了免费源码,让开发实现2小时快速集成上线,扫码即可体验Demo,欢迎进入 获取源码。

 

转载地址:https://blog.csdn.net/zego_0616/article/details/114692405 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:十问十答|3分钟全面了解低代码产品RoomKit
下一篇:使用ZEGO SDK零基础搭建Android语音聊天应用

发表评论

最新留言

很好
[***.229.124.182]2024年04月26日 04时20分59秒