有奖捉虫:办公协同&微信生态&物联网文档专题 HOT

升级说明

TUICallKit 是腾讯云推出一款新的音视频通话 UI 组件,是 TUICalling 的升级版本,支持群组通话、AI降噪等更多功能特性、支持全平台间互通呼叫,功能更加稳定,欢迎您使用新的 TUICallKit 组件,在升级前您需要了解到:
TUICalling 和 TUICallKit 支持相互呼叫,升级前后,请保持 SDKAppID 不变,否则会影响相互通信;
TUICallKit 需要搭配 IM 音视频通话能力套餐,可以单击 IM 控制台,进入对应 SDKAppID 应用的基本配置页面,并在页面的右下角找到含 UI 低代码场景方案 功能区,选择音视频通话,然后单击免费体验即可开通 TUICallKit 的 7 天免费试用服务。如果需要正式应用上线,可以单击 购买正式版 即可进入购买页面。



注意:
IM 音视频通话能力针对不同的业务需求提供了差异化的付费版本供您选择,您可以在 IM 购买页 了解包含功能并选购您适合的版本。

升级步骤

TUICallKit 在设计之初就兼顾了 TUICalling 客户的升级诉求,仅需要简单两步就可以升级完成,预计花费 20 分钟;

1、升级依赖为TUICallKit

在您的工程中完成对TUICallKit的依赖升级,对您的工程的配置文件pubspec.yaml进行设置:
dependencies:
#删除旧的依赖tim_ui_kit_calling_plugin,并添加新的依赖tencent_calls_uikit:
tencent_calls_uikit:
设置完成后执行 flutter pub get 命令。
说明:
如果您之前是配合 TUIChat、TUIContact 等IM 组件一起使用的话,执行完这个步骤即可正常使用 TUICallKit,TUICallKit 组件内部已经处理好兼容逻辑。

2、修改 API 使用

在完成上述步骤后,您的工程就无法正常编译了,需要将 TUICalling API 替换成新的 TUICallKit API,可以参照如下 API 对比信息,搜索替换即可。
API 含义
TUICalling(tim_ui_kit_calling_plugin)
TUICallKit(tencent_calls_uikit)
备注
创建 TUICallKit 实例
TUICalling.sharedInstance
TUICallKit.instance
替换引用、名称
设置用户的昵称
TUICalling.setUserNickname
TUICallKit.setSelfInfo
设置头像、昵称的接口整合到 setSelfInfo 接口
设置用户的头像
TUICalling.setUserAvatar
TUICallKit.setSelfInfo
设置头像、昵称的接口整合到 setSelfInfo 接口
发起 1v1 通话
TUICalling.call
TUICallKit.call
详见 TUICalling.call 接口变更
发起群组通话
/
TUICallKit.groupCall
/
主动加入当前的群组通话中
/
TUICallKit.joinInGroupCall
/
设置自定义来电铃音
TUICalling.setCallingBell
TUICallKit.setCallingBell
替换引用、名称
开启/关闭静音模式
TUICalling.enableMuteMode
TUICallKit.enableMuteMode
替换引用、名称
开启/关闭悬浮窗功能
TUICalling.enableFloatWindow
TUICallKit.enableFloatWindow
替换引用、名称
设置监听事件
TUICalling.registerListener
TUICallEngine.addObserver
详见 TUICalling.registerListener 接口变更
如下是此次升级过程中,变化较大的两个 API 的适配方案:

TUICalling.call 接口变更

TUICalling 代码示例
//原接口
Future<void> call(String userId, CallingScenes type, [OfflinePushInfo? offlinePushInfo]);
TUICallKit 代码示例
//新接口
Future<void> call(String userId, TUICallMediaType callMediaType, [TUICallParams? params]);

//新调用方式
TUIOfflinePushInfo offlinePushInfo = TUIOfflinePushInfo();
offlinePushInfo.title = "Flutter TUICallKit";
offlinePushInfo.desc = "This is an incoming call from Flutter TUICallkit";
TUICallParams params = TUICallParams(offlinePushInfo: offlinePushInfo);
TUICallKit.instance.call(callUserId, TUICallMediaType.audio, params);

TUICallKit.setCallingListener 接口变更

TUICalling 代码示例
TUICalling.sharedInstance().registerListener(TUICallingListener(
onInvited: (params) {
}
onCallingCancel: () {
}
……
));
TUICallKit 代码示例
TUICallEngine.instance.addObserver(TUICallObserver( onError:(int code, String message) {
},
onCallCancelled: (String callerId) {
},
onCallBegin:(TUIRoomId roomId, TUICallMediaType callMediaType, TUICallRole callRole) {
},
……
));
升级完上述 API 后,即可正常使用TUICallKit组件。