ioscallkitpodfiletrtc.io

How to Resolve Symbol Conflicts Between TUICallKit and Self-Integrated Tencent RTC Libraries?


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.


Solution

  • To resolve symbol conflicts between TUICallKit and self-integrated Tencent RTC libraries, follow these guidelines based on the library you’re using:

    1. If You’re Using TXLiteAVSDK_TRTC:

    There will be no symbol conflicts. You can directly add TUICallKit to your Podfile:

    pod 'TUICallKit'
    

    2. If You’re Using 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.

    3. If You’re Using TXLiteAVSDK_Enterprise:

    Symbol conflicts are likely. The recommended approach is to upgrade to TXLiteAVSDK_Professional and then use the TUICallKit/Professional subspec:

    1. Update your Podfile to use TXLiteAVSDK_Professional:

      pod 'TXLiteAVSDK_Professional'
      
    2. Add the TUICallKit/Professional subspec:

      pod 'TUICallKit/Professional'
      

    Steps to Apply Changes:

    1. Update your Podfile with the appropriate dependency as described above.

    2. Run pod install to install the updated dependencies.

    3. Rebuild your project to ensure there are no symbol conflicts.

    Important Notes: