Skip to content

CRASH (IOS): stream_chat_flutter conflict with video_editor #2360

@4lb3rt0r

Description

@4lb3rt0r

Which packages are you using?

stream_chat_flutter

On what platforms did you experience the issue?

iOS

What version are you using?

stream_chat_flutter: ^9.15.0
video_editor: ^3.0.0

What happened?

When adding the stream_chat_flutter dependency to my existing Flutter app (iOS target), the app crashes on startup.

After investigation, the crash is caused by a plugin conflict:

  • stream_chat_flutter pulls in get_thumbnail_video, which registers VideoThumbnailPlugin.
  • My project already depends on video_editor, which brings in video_thumbnail, and that plugin also exports a class named VideoThumbnailPlugin.

Both plugins expose the same Objective-C symbol name (FLTVideoThumbnailPlugin), which causes a duplicate symbol / runtime registration conflict on iOS.

When I remove either stream_chat_flutter or video_editor, the app runs fine. With both, it crashes immediately after launch.

Steps to reproduce

1. Create a Flutter project.
2. Add the following dependencies to `pubspec.yaml`:

   
   dependencies:
     flutter:
       sdk: flutter
     stream_chat_flutter: ^9.15.0
     video_editor: ^3.0.0
3. Run on iOS (simulator or device):
4. Observe the crash during startup.

Supporting info to reproduce

  • Flutter SDK: 3.29.1

  • Dart SDK: 3.7.0

  • iOS Deployment Target: 15.5

  • Device tested: iOS Simulator (iPhone 16 Pro, iOS 17)

  • macOS: 15.6
    Direct deps in my project that are relevant:

  • stream_chat_flutter: ^9.15.0

  • video_editor: ^3.0.0 → depends on video_thumbnail

stream_chat_flutter transitive deps include:

  • get_thumbnail_video: ^0.7.3

Logs thrown while trying to run the app on Xcode:
Image

Relevant log output

VideoThumbnailPlugin is implemented in both
/Users/.../Frameworks/video_thumbnail.framework/video_thumbnail (0x11035d6d8) and
/Users/.../Frameworks/get_thumbnail_video.framework/get_thumbnail_video (0x110d55ee0).
One of the duplicates must be removed or renamed.
This may cause mysterious crashes.

Flutter analyze output

Analyzing flutter_application_1...                                      

   info • The imported package 'provider' isn't a dependency of the importing package • lib/main.dart:2:8 • depend_on_referenced_packages
warning • Unused import: 'package:provider/provider.dart' • lib/main.dart:2:8 • unused_import
   info • 'SortOption' is deprecated and shouldn't be used. Use SortOption.desc or SortOption.asc instead • lib/main.dart:80:32 •
          deprecated_member_use
   info • The imported package 'flutter_application_1' isn't a dependency of the importing package • test/widget_test.dart:11:8 •
          depend_on_referenced_packages

Flutter doctor output

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.29.1, on macOS 15.6 24G84 darwin-arm64, locale es-ES)
[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.dev/to/macos-android-setup for detailed instructions).
      If the Android SDK has been installed to a custom location, please use
      `flutter config --android-sdk` to update to that location.

[✓] Xcode - develop for iOS and macOS (Xcode 16.4)
[✗] Chrome - develop for the web (Cannot find Chrome executable at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.
[!] Android Studio (not installed)
[✓] VS Code (version 1.103.1)
[✓] Connected device (3 available)
[✓] Network resources

! Doctor found issues in 3 categories.

Code of Conduct

  • I agree to follow this project's Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions