Agora SDK安装程序

时间:2016-05-24 23:11:39

标签: video webrtc agora.io

我正在尝试使用Agora SDK(www.agora.io)将1:1视频通话添加到我的iOS应用中。我正在尝试按照您的SDK指南,但可以使用一些帮助。如何设置通话?

1 个答案:

答案 0 :(得分:1)

设置通话有几个步骤。下面的流程图将引导您完成它。

Agora Call Setup Chart

您还可以参考我们的AgoraDemo应用程序部分,其中包含了源代码。 首先,您必须创建AgoraRTCEngine:

@property (strong, nonatomic) AgoraRtcEngineKit *agoraKit;

接下来,您必须使用供应商密钥对其进行初始化(请注意,在我们的演示应用中,我们使用上一个故事板页面中的vendorKey的UITextInput):

self.agoraKit = [AgoraRtcEngineKit sharedEngineWithVendorKey:self.vendorKey delegate:self];

接下来,启用视频:

[self.agoraKit enableVideo];

然后您准备加入渠道与其他参与者交谈:

[self.agoraKit joinChannelByKey:nil channelName:self.channel info:nil uid:0 joinSuccess:^(NSString *channel, NSUInteger uid, NSInteger elapsed) {

如果要显示本地视频,请先将AgoraRTCVideoCanvas绑定到视图:

AgoraRtcVideoCanvas *videoCanvas = [[AgoraRtcVideoCanvas alloc] init];
videoCanvas.uid = unsignedIntegerValue; // Use your own User ID (UID)
videoCanvas.view = self.videoMainView;
videoCanvas.renderMode = AgoraRtc_Render_Hidden;

然后调用setupLocalVideo指定您希望在该视图中使用本地视频:

[self.agoraKit setupLocalVideo:videoCanvas];

当第二个参与者加入同一个频道时,将调用委托方法didJoinedofUID:

- (void)rtcEngine:(AgoraRtcEngineKit *)engine didJoinedOfUid:(NSUInteger)uid elapsed:(NSInteger)elapsed
{
    // (Do something) Your code
}

确定要将该远程参与者的视频绑定到哪个视图:

AgoraRtcVideoCanvas *videoCanvas = [[AgoraRtcVideoCanvas alloc] init];
videoCanvas.uid = unsignedIntegerValue; // Use your own User ID (UID)
videoCanvas.view = self.videoMainView;
videoCanvas.renderMode = AgoraRtc_Render_Hidden;

然后调用setupRemoteVideo指定您希望该视图中该参与者的远程视频:

[self.agoraKit setupRemoteVideo:videoCanvas];

如果参与者离开频道,将调用委托方法didOfflineOfUid:

- (void)rtcEngine:(AgoraRtcEngineKit *)engine didOfflineOfUid:(NSUInteger)uid reason:(AgoraRtcUserOfflineReason)reason
{
      // (Do something) Your code
}

在通话结束时,请致电leaveChannel:

[self.agoraKit leaveChannel:nil];