1. Integrate tencent_calls_uikit
and tencent_trtc_cloud
at the same time, or integrate tencent_calls_uikit
and live_flutter_plugin
at the same time, and the symbol conflict will occur, how to solve it?
Detials: When introducing flutter ''tencent_calls_uikit'' into our existing project, Android builds APK with the following error:
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)
The following error occurs when pod install
is executed on iOS:
[!] The 'Pods-Runner' target has frameworks with conflicting names: txsoundtouch.xcframework and txffmpeg.xcframework.
The reason for this problem is that tencent_calls_uikit and tencent_trtc_cloud rely on the standard and premium versions of TRTC Android SDK respectively (this problem will be gradually unified in subsequent versions). Currently, this problem can be fixed through local integration. The specific steps are as follows:
1. Go to the version management page of tencent_calls_uikit and tencent_calls_engine respectively (tencent_calls_uikit depends on tencent_calls_engine), click the download button, wait for the download to complete, and extract the file. Android: Go to the directory decompressed by tencent_calls_engine
and change the dependency in the android/build.gradle
file to the one displayed in the error message: com.tencent.liteav:LiteAVSDK_Professional:10.7.0.13053
.
iOS: Go to the directory where tencent_calls_engine
is decompressed and change the dependencies in theios/tencent_calls_engine. podspec
file to: s.dependency 'TUICallEngine/Professional', '1.5.1.310'
.
Then go to the directory extracted by tencent_calls_uikit
and change the dependencies in the ios/ Tencent_calls_UIkit. podspec
file to: s.dapendency 'TUICallKit/Professional', '1.5.1.310'
.
3. Modify pubspec.yaml
in the tencent_calls_uikit project to adjust the tencent_calls_engine
dependency to a local dependency as shown in the following example: tencent_calls_engine:
path: tencent_calls_engine/ # The directory here corresponds to the plug-in directory you just downloaded
4. Modify pubspec.yaml
in your project to change the tencent_calls_uikit
dependency to a local dependency as shown in the following example:
tencent_calls_uikit:
path: tencent_calls_uikit/ # The directory here corresponds to the plug-in directory you just downloaded
2. Flutter Android does not add confusion Settings, how to set?
If you need to compile and run on the Android platform, because we use the reflection feature of Java inside the SDK, we need to add some classes in the SDK to the list of non-obviation, so you need to add the following code in the proguard-rules.pro file:
-keep class com.tencent.** { *; }
3. How can I fix a compilation error or page failure caused by an upgrade from a version earlier than 1.8.0 to 1.8.0 or later?
If you are upgrading from 1.8.0 or below to 1.8.0 or above, you need to check that the following steps are normal:
1. Add navigatorObservers
to MateriaApp
. The purpose is to navigate to the TUICallKit page when you receive a call invitation. Example code is as follows:
import 'package:tencent_calls_uikit/tuicall_kit.dart';
MaterialApp(
navigatorObservers:[TUICallKit.navigatorObserver],
...
)
2. tencent_calls_engine
Import files in plug-ins are uniformly replaced with new ones.
import 'package:tencent_calls_engine/tuicall_engine.dart';
import 'package:tencent_calls_engine/tuicall_observer.dart';
import 'package:tencent_calls_engine/tuicall_define.dart';
The above code block content is replaced with the following:
import 'package:tencent_calls_engine/tencent_calls_engine.dart';
3. The login API adjustment is more standardized and no parameters need to be specified.
4. Optimization of offline push parameter construction.
Was this page helpful?