Agora.io 提供了音频通话和视频通话的解决方案,可以实现类似于 WhatsApp 的呼叫功能。下面是一个简单的示例,用于实现基于 Agora.io 的音频通话和视频通话:
// 初始化 Agora SDK
RtcEngine rtcEngine;
rtcEngine = RtcEngine.create(this, "YOUR_APP_ID", mRtcEventHandler);
// 加入声道
rtcEngine.joinChannel(null, "YOUR_CHANNEL_NAME", null, 0);
// 打开音频
rtcEngine.enableAudio();
// 开启麦克风
rtcEngine.setEnableSpeakerphone(false);
rtcEngine.setEnableAudioVolumeIndication(true, 3);
// 设置远程用户音量
rtcEngine.adjustUserPlaybackSignalVolume(uid, volume);
// 打开视频
rtcEngine.enableVideo()
// 设置本地视频
SurfaceView view = RtcEngine.CreateRendererView(getApplicationContext());
rtcEngine.setupLocalVideo(new VideoCanvas(view, VideoCanvas.RENDER_MODE_HIDDEN, 0));
// 设置远程视频
SurfaceView remoteView = RtcEngine.CreateRendererView(getApplicationContext());
rtcEngine.setupRemoteVideo(new VideoCanvas(remoteView, VideoCanvas.RENDER_MODE_HIDDEN, uid));
// 结束通话
rtcEngine.leaveChannel();
// 开启/关闭视频
rtcEngine.muteLocalVideoStream(false);
rtcEngine.muteLocalVideoStream(true);
// 开启/关闭音频
rtcEngine.mute