Microphone Management

本文档主要介绍 SeatGridView 的麦克风管理能力。
SeatGridView 支持如下麦克风管理能力:

前提条件

在使用 SeatGridView 前,您需要先 集成与登录 SeatGridView ,以便后续功能正常使用。

使用指引

步骤1:将 SeatGridView 添加到视图上

您需要先导入 SeatGridView 模块,然后创建一个 SeatGridView 视图对象,并将其添加到自己的视图上。
iOS
Android
import UIKit
import RTCRoomEngine
import SeatGridView

class MicrophoneManagementController: UIViewController {
private let seatGridView: SeatGridView = {
let view = SeatGridView()
return view
}()
override func viewDidLoad() {
super.viewDidLoad()
self.seatGridView.addObserver(observer: self)
// 将 seatGridView 添加到视图上,同时设置好布局约束
}
deinit {
self.seatGridView.removeObserver(observer: self)
}
}
import com.trtc.uikit.livekit.seatGridView.SeatGridView;

public class MicrophoneManagementActivity extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
SeatGridView seatGridView = new SeatGridView(this);
addContentView(seatGridView,
new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));

seatGridView.addObserver(this);
}

@Override
protected void onDestroy() {
super.onDestroy();
seatGridView.removeObserver(this);
}
}

步骤2:管理麦克风

打开麦克风

调用 startMicrophone 打开麦克风。
iOS
Android
self.seatGridView.startMicophone {
// 打开麦克风成功
} onError: { code, message in
// 打开麦克风失败
}
seatGridView.startMicrophone(new TUIRoomDefine.ActionCallback() {
@Override
public void onSuccess () {
// 打开麦克风成功
}

@Override
public void onError (TUICommonDefine.Error error, String message) {
// 打开麦克风失败
}
});

关闭麦克风

调用 stopMicrophone 关闭麦克风。
iOS
Android
self.seatGridView.stopMicophone()
seatGridView.stopMicophone();

静音

调用 muteMicrophone 静音。
iOS
Android
self.seatGridView.muteMicrophone()
seatGridView.muteMicrophone();

解除静音

调用 unmuteMicrophone 解除静音。
iOS
Android
self.seatGridView.unmuteMicrophone {
// 解除静音成功
} onError: { code, message in
// 解除静音失败
}
seatGridView.unMuteLocalAudio(new TUIRoomDefine.ActionCallback() {
@Override
public void onSuccess() {
// 解除静音成功
}

@Override
public void onError(TUICommonDefine.Error error, String message) {
// // 解除静音失败
}
});
当有人麦克风状态发生改变时,您会收到回调 onUserAudioStateChanged
iOS
Android
func onUserAudioStateChanged(userInfo: TUIUserInfo, hasAudio: Bool, reason: TUIChangeReason) {
// userInfo.userName的音频状态改变了
}
void onUserAudioStateChanged(TUIRoomDefine.UserInfo userInfo, boolean hasAudio,
TUIRoomDefine.ChangeReason reason) {
// userInfo.userName的音频状态改变了
}