提交工单
咨询集成、功能及报价等问题
本文将介绍 Express Flutter SDK 版本升级至 3.0.0 及以上版本时的说明和注意事项。
废弃 ZegoScenario 场景枚举中的 [General], [Communication], [Live] 三种场景,详情请参考 场景化音视频配置 文档进行适配。
从这个版本开始,Express iOS SDK 不再支持 bitcode。
请参考 Apple Xcode 14 Release Notes 中关于废弃 bitcode 的说明。
适配方式:打开 Xcode 工程的配置页面,在 App Target 的 "Build Settings" 页面中找到 "Enable Bitcode" 选项,将其设置为 "No"。
废弃了 ZegoEngineConfig > advancedConfig 的配置项 "audio_device_mode",请使用 setAudioDeviceMode 接口代替。
删除下列在先前版本已废弃的接口。
方法名 | 描述 |
---|---|
setDebugVerbose | 设置调试详细信息开关以及语言。此函数在 2.3.0 版本废弃,请使用 enableDebugAssistant 来实现原来的功能。 |
loginMultiRoom | 登录多房间。此方法在版本 2.9.0 以后已废弃,若需实现多房间功能,请先在引擎初始化之前调用 setRoomMode 函数设置多房间模式,再使用 loginRoom 登录多房间,如果调用 loginRoom 函数登录多房间,请确保传入相同的用户信息。 |
setPlayStreamVideoLayer | 设置选取拉流视频图层。此函数在 2.3.0 版本以后已废弃, 请使用 setPlayStreamVideoType 代替。 |
enableAudioDataCallback | 开启额外接收音频数据的回调。此函数在 2.7.0 版本以后已废弃,请使用 startAudioDataObserver 和 stopAudioDataObserver 代替。 |
setReverbParam | 设置混响的具体参数。此函数在 1.18.0 版本以后已废弃,请使用 setReverbPreset 或者 setReverbAdvancedParam 代替。 |
setBuiltInSpeakerOn | 是否使用内置扬声器播放声音。此函数在 2.3.0 版本以后已废弃,请使用 setAudioRouteToSpeaker 代替。 |
onDeviceError | 设备异常通知。此函数在 2.15.0 版本及以上已废弃,请使用 onLocalDeviceExceptionOccurred 代替。 |
您可以参考以下示例代码进行接口变更。
3.0.0 版本前
ZegoExpressEngine.setEngineConfig(ZegoEngineConfig(advancedConfig: { 'audio_device_mode': '2' }));
3.0.0 及以上版本
ZegoExpressEngine.instance.setAudioDeviceMode(ZegoAudioDeviceMode.General);
3.0.0 版本前
ZegoExpressEngine.instance.setDebugVerbose(true, ZegoLanguage.English);
3.0.0 及以上版本
// 注意,请勿在线上版本开启此功能!仅在开发阶段使用!
// Note, do not enable this feature in the online version! Use only during development phase!"
ZegoExpressEngine.instance.enableDebugAssistant(true);
3.0.0 版本前
ZegoExpressEngine.createEngineWithProfile(profile);
var user = ZegoUser.id("user1");
ZegoExpressEngine.instance.loginRoom("first_room", user);
ZegoExpressEngine.instance.loginMultiRoom("second_room");
3.0.0 及以上版本
可以参考 登录多房间 文档
// 必须在调用 [createEngine] 之前设置才生效,否则会失败。
// Must be set before calling [createEngine] to take effect, otherwise it will fail.
ZegoExpressEngine.setRoomMode(ZegoRoomMode.MultiRoom);
ZegoExpressEngine.createEngineWithProfile(profile);
var user = ZegoUser.id("user1");
ZegoExpressEngine.instance.loginRoom("first_room", user);
ZegoExpressEngine.instance.loginRoom("second_room", user);
3.0.0 版本前
ZegoExpressEngine.instance.setPlayStreamVideoLayer("stream1", ZegoPlayerVideoLayer.Auto);
3.0.0 及以上版本
可以参考 设置视频编码方式 文档
ZegoExpressEngine.instance.setPlayStreamVideoType("stream1", ZegoVideoStreamType.Default);
3.0.0 版本前
int bitmask = ZegoAudioDataCallbackBitMask.Captured | ZegoAudioDataCallbackBitMask.Player;
var param = ZegoAudioFrameParam(ZegoAudioSampleRate.SampleRate48K, ZegoAudioChannel.Mono);
// Start
ZegoExpressEngine.instance.enableAudioDataCallback(true, bitmask, param);
// Stop
ZegoExpressEngine.instance.enableAudioDataCallback(false, bitmask, param);
3.0.0 及以上版本
int bitmask = ZegoAudioDataCallbackBitMask.Captured | ZegoAudioDataCallbackBitMask.Player;
var param = ZegoAudioFrameParam(ZegoAudioSampleRate.SampleRate48K, ZegoAudioChannel.Mono);
// Start
ZegoExpressEngine.instance.startAudioDataObserver(bitmask, param);
// Stop
ZegoExpressEngine.instance.stopAudioDataObserver();
3.0.0 版本前
var param = ZegoReverbParam(ZegoReverbPreset.Basement);
ZegoExpressEngine.instance.setReverbParam(param);
3.0.0 及以上版本
ZegoExpressEngine.instance.setReverbPreset(ZegoReverbPreset.Basement);
// param 为 ZegoReverbAdvancedParam 对象;
ZegoExpressEngine.instance.setReverbAdvancedParam(param);
3.0.0 版本前
ZegoExpressEngine.instance.setBuiltInSpeakerOn(true);
3.0.0 及以上版本
ZegoExpressEngine.instance.setAudioRouteToSpeaker(true);
3.0.0 版本前
ZegoExpressEngine.onDeviceError(int errorCode, String deviceName) {
// Handle device error
// 处理设备错误
}
3.0.0 及以上版本
ZegoExpressEngine.onLocalDeviceExceptionOccurred(ZegoDeviceExceptionType exceptionType, ZegoDeviceType deviceType, String deviceID) {
// Handle device error
// 处理设备错误
}
联系我们
文档反馈