I’m integrating TUICallKit
into my iOS project, but I already have a Tencent RTC audio/video library (e.g., TXLiteAVSDK_Professional
or TXLiteAVSDK_Enterprise
) integrated. But there might be symbol conflicts if multiple Tencent RTC libraries are used together.
Could someone clarify how to resolve these conflicts? Specifically:
If I’m using TXLiteAVSDK_TRTC
, can I integrate TUICallKit
directly without any issues?
If I’m using TXLiteAVSDK_Professional
or TXLiteAVSDK_Enterprise
, what steps should I take to avoid symbol conflicts?
Are there specific dependencies or configurations I need to add to my Podfile
to ensure compatibility?
I’d appreciate a detailed explanation of how to handle these scenarios to avoid build errors or runtime issues.
To resolve symbol conflicts between TUICallKit
and self-integrated Tencent RTC libraries, follow these guidelines based on the library you’re using:
TXLiteAVSDK_TRTC
:There will be no symbol conflicts. You can directly add TUICallKit
to your Podfile
:
pod 'TUICallKit'
TXLiteAVSDK_Professional
:Symbol conflicts may occur. To avoid this, use the TUICallKit/Professional
subspec in your Podfile
:
pod 'TUICallKit/Professional'
This ensures compatibility with TXLiteAVSDK_Professional
.
TXLiteAVSDK_Enterprise
:Symbol conflicts are likely. The recommended approach is to upgrade to TXLiteAVSDK_Professional
and then use the TUICallKit/Professional
subspec:
Update your Podfile
to use TXLiteAVSDK_Professional
:
pod 'TXLiteAVSDK_Professional'
Add the TUICallKit/Professional
subspec:
pod 'TUICallKit/Professional'
Update your Podfile
with the appropriate dependency as described above.
Run pod install
to install the updated dependencies.
Rebuild your project to ensure there are no symbol conflicts.
Avoid integrating multiple Tencent RTC libraries (e.g., TXLiteAVSDK_TRTC
, TXLiteAVSDK_Professional
, or TXLiteAVSDK_Enterprise
) simultaneously, as this will likely cause symbol conflicts.
Always use the correct subspec (TUICallKit
or TUICallKit/Professional
) based on the Tencent RTC library you’re using.