GetStream / stream-video-flutter

Flutter Video SDK - Build your own video app experience using Dart, Flutter and the Stream Video Messaging API.
https://getstream.io/video/docs/flutter/
Other
46 stars 21 forks source link

Call Ringing: type 'Null' is not a subtype of type 'Object' in type cast #761

Open qu0cquyen opened 1 month ago

qu0cquyen commented 1 month ago

Stack Trace:

      Exception: type 'Null' is not a subtype of type 'Object' in type cast with trace #0      CastMap.forEach.<anonymous closure> (dart:_internal/cast.dart:286:25)
      #1      _LinkedHashMapMixin.forEach (dart:collection-patch/compact_hash.dart:633:13)
compact_hash.dart:633
      #2      CastMap.forEach (dart:_internal/cast.dart:285:13)
cast.dart:285
      #3      MapBase.mapToString (dart:collection/maps.dart:122:9)
maps.dart:122
      #4      MapBase.toString (dart:collection/maps.dart:109:24)
maps.dart:109
      #5      _StringBase._interpolate (dart:core-patch/string_patch.dart:871:19)
string_patch.dart:871
      #6      CallUser.toString (package:stream_video/src/models/call_metadata.dart:166:5)
call_metadata.dart:166
      #7      mapPropsToString.<anonymous closure> (package:equatable/src/equatable_utils.dart:72:46)
equatable_utils.dart:72
      #8      MappedListIterable.elementAt (dart:_internal/iterable.dart:425:31)
iterable.dart:425
      #9      ListIterable.join (dart:_internal/iterable.dart:159:25)
iterable.dart:159
      #10     mapPropsToString (package:equatable/src/equatable_utils.dart:72:58)
equatable_utils.dart:72
      #11     EquatableMixin.toString (package:equatable/src/equatable_mixin.dart:38:15)
equatable_mixin.dart:38
      #12     _StringBase._interpolate (dart:core-patch/string_patch.dart:871:19)
string_patch.dart:871
      #13     CallMetadata.toString (package:stream_video/src/models/call_metadata.dart:33:5)
call_metadata.dart:33
      #14     _StringBase._interpolate (dart:core-patch/string_patch.dart:871:19)
string_patch.dart:871
      #15     CallRingingData.toString (package:stream_video/src/models/call_ringing_data.dart:24:5)
call_ringing_data.dart:24
      #16     _StringBase._interpolate (dart:core-patch/string_patch.dart:871:19)
string_patch.dart:871
      #17     new Call.fromRinging.<anonymous closure> (package:stream_video/src/call/call.dart:146:55)
call.dart:146
      #18     ConsoleStreamLogger.log (package:stream_video/src/logger/impl/console_logger.dart:18:65)
console_logger.dart:18
      #19     CompositeStreamLogger.log (package:stream_video/src/logger/stream_log.dart:118:13)
stream_log.dart:118
      #20     StreamLog.i (package:stream_video/src/logger/stream_log.dart:54:15)
stream_log.dart:54
      #21     new Call.fromRinging (package:stream_video/src/call/call.dart:146:15)
call.dart:146
      #22     StreamVideo._makeCallFromRinging (package:stream_video/src/stream_video.dart:510:17)
stream_video.dart:510
      #23     StreamVideo._onEvent (package:stream_video/src/stream_video.dart:404:20)
stream_video.dart:404
      #24     _rootRunUnary (dart:async/zone.dart:1407:47)
zone.dart:1407
      #25     _CustomZone.runUnary (dart:async/zone.dart:1308:19)
zone.dart:1308
      #26     _CustomZone.runUnaryGuarded (dart:async/zone.dart:1217:7)
zone.dart:1217
      #27     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:365:11)
stream_impl.dart:365
      #28     _DelayedData.perform (dart:async/stream_impl.dart:541:14)
stream_impl.dart:541
      #29     _PendingEvents.handleNext (dart:async/stream_impl.dart:646:11)
stream_impl.dart:646
      #30     _PendingEvents.schedule.<anonymous closure> (dart:async/stream_impl.dart:617:7)
stream_impl.dart:617
      #31     _rootRun (dart:async/zone.dart:1391:47)
zone.dart:1391
      #32     _CustomZone.run (dart:async/zone.dart:1301:19)
zone.dart:1301
      #33     _CustomZone.runGuarded (dart:async/zone.dart:1209:7)
zone.dart:1209
      #34     _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1249:23)
zone.dart:1249
      #35     _rootRun (dart:async/zone.dart:1399:13)
zone.dart:1399
      #36     _CustomZone.run (dart:async/zone.dart:1301:19)
zone.dart:1301
      #37     _CustomZone.runGuarded (dart:async/zone.dart:1209:7)
zone.dart:1209
      #38     _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1249:23)
zone.dart:1249
      #39     _microtaskLoop (dart:async/schedule_microtask.dart:40:21)
schedule_microtask.dart:40
      #40     _startMicrotaskLoop (dart:async/schedule_microtask.dart:49:5)
schedule_microtask.dart:49

flutter doctor -v

Flutter (Channel stable, 3.24.2, on macOS 14.0 23A344 darwin-arm64, locale en-CA)
    • Flutter version 3.24.2 on channel stable at /Users/lucas/development/flutter
    ! Warning: `dart` on your path resolves to /opt/homebrew/Cellar/dart/3.5.2/libexec/bin/dart, which is not inside your current Flutter SDK checkout at
      /Users/lucas/development/flutter. Consider adding /Users/lucas/development/flutter/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 4cf269e36d (10 days ago), 2024-09-03 14:30:00 -0700
    • Engine revision a6bd3f1de1
    • Dart version 3.5.2
    • DevTools version 2.37.2
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[!] Android toolchain - develop for Android devices (Android SDK version 33.0.1)
    • Android SDK at /Users/lucas/Library/Android/sdk
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/to/macos-android-setup for more details.

[✓] Xcode - develop for iOS and macOS (Xcode 15.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15A240d
    • CocoaPods version 1.15.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2023.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.10+0-17.0.10b1087.21-11572160)

[✓] VS Code (version 1.93.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.96.0
deven98 commented 1 week ago

Hey @qu0cquyen 👋

Can you let me know when this error occurs for you? Anything that would help us reproduce it?

Thanks.

qu0cquyen commented 1 week ago

Hi @deven98,

In my case, I have two apps, let say app A and app B.

App A is with the newest version of stream-video-flutter, while App B is with 0.3.7.

When App B is calling to App A, App A receives a call from B but in the state of Ringing, then the exception is thrown like above.