Call
  • 产品概述
  • Web
    • 跑通 Demo
    • 集成
      • Web&H5 (React)
      • Web&H5 (Vue3)
    • AI 降噪
    • 虚拟背景
    • UI 定制
    • 云端录制
    • 更多功能
      • 设置昵称和头像
      • 设置分辨率和填充模式
      • 群组通话
      • 悬浮窗
      • 自定义铃声
      • 监控通话状态
    • 客户端 API
      • 接口概述
      • TUICallKit
      • TUICallEngine
      • TUICallEvent
    • 服务端 API
      • 通话状态回调
        • 通话状态回调
        • 通话事件回调
        • 回调配置
          • 回调配置接口列表
          • 创建回调配置
          • 查询回调配置
          • 更新回调配置
          • 删除回调配置
      • REST 接口
        • REST 接口简介
        • 通过 callId 获取记录
        • 通过条件获取记录
    • 发布说明
  • Android
    • 跑通 Demo
    • 集成
    • AI 降噪
    • 虚拟背景
    • UI 定制
    • 离线通话推送
    • 云端录制
    • 更多功能
      • 设置昵称和头像
      • 群组通话
      • 悬浮窗
      • 自定义铃声
      • 监控通话状态
    • 客户端 API
      • 接口概述
      • TUICallKit
      • TUICallEngine
      • TUICallObserver
      • 类型定义
    • 服务端 API
      • 通话状态回调
        • 通话状态回调
        • 通话事件回调
        • 回调配置
          • 回调配置接口列表
          • 创建回调配置
          • 查询回调配置
          • 更新回调配置
          • 删除回调配置
      • REST 接口
        • REST 接口简介
        • 通过 callId 获取记录
        • 通过条件获取记录
    • 发布说明
  • iOS
    • 跑通 Demo
    • 集成
    • AI 降噪
    • 虚拟背景
    • UI 定制
    • 离线通话推送
      • VoIP
      • APN
    • 云端录制
    • 更多功能
      • 设置昵称和头像
      • 群组通话
      • 悬浮窗
      • 自定义铃声
      • 监控通话状态
    • 客户端 API
      • 接口概述
      • TUICallKit
      • TUICallEngine
      • TUICallObserver
      • 类型定义
    • 服务端 API
      • 通话状态回调
        • 通话状态回调
        • 通话事件回调
        • 回调配置
          • 回调配置接口列表
          • 创建回调配置
          • 查询回调配置
          • 更新回调配置
          • 删除回调配置
      • REST 接口
        • REST 接口简介
        • 通过 callId 获取记录
        • 通过条件获取记录
    • 发布说明
  • Flutter
    • 跑通 Demo
    • 集成
    • AI 降噪
    • 虚拟背景
    • UI 定制
    • 离线通话推送
      • 通知
      • VoIP(可选)
    • 云端录制
    • 更多功能
      • 设置昵称和头像
      • 群组通话
      • 悬浮窗
      • 美颜特效
      • 自定义铃声
      • 监控通话状态
    • 客户端 API
      • 接口概述
      • TUICallKit
      • TUICallEngine
      • TUICallObserver
      • 类型定义
    • 服务端 API
      • 通话状态回调
        • 通话状态回调
        • 通话事件回调
        • 回调配置
          • 回调配置接口列表
          • 创建回调配置
          • 查询回调配置
          • 更新回调配置
          • 删除回调配置
      • REST 接口
        • REST 接口简介
        • 通过 callId 获取记录
        • 通过条件获取记录
    • 升级
    • 发布说明
  • 产品概述
    • 产品概述
  • 开通服务
  • 价格中心
    • 免费时长
    • 音视频通话 Call 包月套餐
    • Billing Explanation for Subscription Package Duration
    • Pay-as-you-go
      • Billing of Audio and Video Duration
      • Billing of On-Cloud Recording and Recording Delivery
      • Billing of MixTranscoding and Relay to CDN
  • ErrorCode
  • 常见问题
    • All Platform
      • FAQs
      • UserSig
    • Web
    • Flutter
    • iOS
    • Android
Call

Flutter

1、同时集成 tencent_calls_uikit 和 tencent_trtc_cloud,或同时集成 tencent_calls_uikit 和 live_flutter_plugin,出现符号冲突报错,怎么解决?

问题详情:当引入 flutter ''tencent_calls_uikit'' 进我们现有的 project 后,Android 构建 APK 时出现如下报错:
Duplicate class com.tencent.liteav.LiveSettingJni found in modules jetified-LiteAVSDK_Professional-10.7.0.13053-runtime
(com.tencent.liteav:LiteAVSDK_Professional:10.7.0.13053) and jetified-LiteAVSDK_TRTC-10.3.0.11225-runtime
(com.tencent.liteav:LiteAVSDK_TRTC:10.3.0.11225)
iOS 在执行pod install出现如下报错:
[!] The 'Pods-Runner' target has frameworks with conflicting names: txsoundtouch.xcframework and txffmpeg.xcframework.
这个问题原因是 tencent_calls_uikit 和 tencent_trtc_cloud 分别依赖于 TRTC Android SDK 的专业版和精简版(这个问题我们会在后续版本逐步统一),目前可以通过本地集成的方式来修复这个问题,具体步骤如下:
1. 分别进入 tencent_calls_uikittencent_calls_engine 的版本管理页面(tencent_calls_uikit依赖于tencent_calls_engine),单击下载按钮,等待下载完成后,解压文件。




2. 修改 tencent_calls_engine 插件中 TRTC SDK 依赖为专业版本。
Android:进入tencent_calls_engine 解压后的目录,修改 android/build.gradle 文件中的依赖为报错信息中呈现的:com.tencent.liteav:LiteAVSDK_Professional:10.7.0.13053


iOS:首先进入tencent_calls_engine 解压后的目录,修改 ios/tencent_calls_engine.podspec 文件中的依赖为:s.dependency 'TUICallEngine/Professional', '1.5.1.310'


再进入tencent_calls_uikit 解压后的目录,修改 ios/tencent_calls_uikit.podspec 文件中的依赖为:s.dependency 'TUICallKit/Professional', '1.5.1.310'



3. 修改 tencent_calls_uikit 工程中的pubspec.yaml,将 tencent_calls_engine 的依赖调整为本地依赖,示例如下:
tencent_calls_engine:
path: tencent_calls_engine/ # 这里的目录对应您刚才下载的插件目录
4. 修改您工程中的pubspec.yaml,将 tencent_calls_uikit 的依赖修改为本地依赖,示例如下:
tencent_calls_uikit:
path: tencent_calls_uikit/ # 这里的目录对应您刚才下载的插件目录

2、Flutter Android未添加混淆设置,怎么设置?

如果您需要编译运行在 Android 平台,由于我们在 SDK 内部使用了Java 的反射特性,需要将 SDK 中的部分类加入不混淆名单,因此需要您在 proguard-rules.pro 文件中添加如下代码:
-keep class com.tencent.** { *; }

3、从1.8.0以下的版本升级到1.8.0及以上的版本,导致编译报错或者拉不起页面问题如何修复?

如果是从1.8.0以下升级到1.8.0及以上的版本,需要您检查下面几个步骤是否正常:
1. navigatorObservers 添加到 MateriaApp。 目的是在收到呼叫邀请时导航到 TUICallKit 页面。示例代码如下:
import 'package:tencent_calls_uikit/tuicall_kit.dart';

MaterialApp(
     navigatorObservers:[TUICallKit.navigatorObserver],
     ...
2. tencent_calls_engine 插件中的导入文件统一替换为新的。
import 'package:tencent_calls_engine/tuicall_engine.dart';
import 'package:tencent_calls_engine/tuicall_observer.dart';
import 'package:tencent_calls_engine/tuicall_define.dart';
以上代码块内容替换为下方所示:
import 'package:tencent_calls_engine/tencent_calls_engine.dart';
3. 登录 API 调整更规范,不需要再指定参数。



4. 离线推送参数构造优化。