chewie icon indicating copy to clipboard operation
chewie copied to clipboard

Unhandled Except ion: Bad state: Future already completed

Open Ice-Coffey opened this issue 4 years ago • 5 comments

There seems to be an issue that may be related to ... https://github.com/flutter/flutter/issues/29591 with video player.

But I am getting all of this wonky output in the console for "Bad state: Future already completed" and can't figure out how to fix it.

Here is flutter doctor -v:

[√] Flutter (Channel dev, v1.12.15, on Microsoft Windows [Version 6.3.9600], locale en-US) • Flutter version 1.12.15 at C:\Users\Johnny\flutter\flutter • Framework revision 459c7fb884 (5 weeks ago), 2019-11-26 17:04:51 +0000 • Engine revision e136d637a8 • Dart version 2.7.0

[√] Android toolchain - develop for Android devices (Android SDK version 29.0. 2) • Android SDK at C:\Users\Johnny\AppData\Local\Android\sdk • Android NDK location not configured (optional; useful for native profili ng support) • Platform android-29, build-tools 29.0.2 • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b03) • All Android licenses accepted.

[√] Android Studio (version 3.5) • Android Studio at C:\Program Files\Android\Android Studio • Flutter plugin version 39.0.3 • Dart plugin version 191.8423 • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b03)

[√] VS Code (version 1.40.2) • VS Code at C:\Users\Johnny\AppData\Local\Programs\Microsoft VS Code • Flutter extension version 3.7.0

[√] VS Code, 64-bit edition (version 1.22.1) • VS Code at C:\Program Files\Microsoft VS Code • Flutter extension version 3.7.0

[√] Connected device (1 available) • SM N960U • 258dabb0600c7ece • android-arm64 • Android 9 (API 28)

ΓÇó No issues found!

Here is the stack trace:

E/flutter (22236): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Except ion: Bad state: Future already completed E/flutter (22236): #0 _AsyncCompleter.complete (dart:async/future_impl.dart :41:31) E/flutter (22236): #1 VideoPlayerController.initialize (package:video_playe r/video_player.dart:234:24) E/flutter (22236): E/flutter (22236): #2 ChewieController._initialize (package:chewie/src/chew ie_player.dart:293:35) E/flutter (22236): E/flutter (22236): #3 new ChewieController (package:chewie/src/chewie_playe r.dart:199:5) E/flutter (22236): #4 _VideoPlayerScreenState.initState (package:artifice/p ost_ui/video_viewer_ui.dart:66:21) E/flutter (22236): #5 StatefulElement._firstBuild (package:flutter/src/widg ets/framework.dart:4355:58) E/flutter (22236): #6 ComponentElement.mount (package:flutter/src/widgets/f ramework.dart:4201:5) E/flutter (22236): #7 Element.inflateWidget (package:flutter/src/widgets/fr amework.dart:3194:14) E/flutter (22236): #8 Element.updateChild (package:flutter/src/widgets/fram ework.dart:2988:12) E/flutter (22236): #9 SingleChildRenderObjectElement.mount (package:flutter /src/widgets/framework.dart:5445:14) E/flutter (22236): #10 Element.inflateWidget (package:flutter/src/widgets/fr amework.dart:3194:14) E/flutter (22236): #11 Element.updateChild (package:flutter/src/widgets/fram ework.dart:2988:12) E/flutter (22236): #12 ComponentElement.performRebuild (package:flutter/src/ widgets/framework.dart:4243:16) E/flutter (22236): #13 Element.rebuild (package:flutter/src/widgets/framewor k.dart:3947:5) E/flutter (22236): #14 ComponentElement._firstBuild (package:flutter/src/wid gets/framework.dart:4206:5) E/flutter (22236): #15 ComponentElement.mount (package:flutter/src/widgets/f ramework.dart:4201:5) E/flutter (22236): #16 Element.inflateWidget (package:flutter/src/widgets/fr amework.dart:3194:14) E/flutter (22236): #17 Element.updateChild (package:flutter/src/widgets/fram ework.dart:2988:12) E/flutter (22236): #18 SingleChildRenderObjectElement.mount (package:flutter /src/widgets/framework.dart:5445:14) E/flutter (22236): #19 Element.inflateWidget (package:flutter/src/widgets/fr amework.dart:3194:14) E/flutter (22236): #20 Element.updateChild (package:flutter/src/widgets/fram ework.dart:2988:12) E/flutter (22236): #21 SingleChildRenderObjectElement.mount (package:flutter /src/widgets/framework.dart:5445:14) E/flutter (22236): #22 Element.inflateWidget (package:flutter/src/widgets/fr amework.dart:3194:14) E/flutter (22236): #23 Element.updateChild (package:flutter/src/widgets/fram ework.dart:2988:12) E/flutter (22236): #24 ComponentElement.performRebuild (package:flutter/src/ widgets/framework.dart:4243:16) E/flutter (22236): #25 Element.rebuild (package:flutter/src/widgets/framewor k.dart:3947:5) E/flutter (22236): #26 ComponentElement._firstBuild (package:flutter/src/wid gets/framework.dart:4206:5) E/flutter (22236): #27 StatefulElement._firstBuild (package:flutter/src/widg ets/framework.dart:4381:11) E/flutter (22236): #28 ComponentElement.mount (package:flutter/src/widgets/f ramework.dart:4201:5) E/flutter (22236): #29 Element.inflateWidget (package:flutter/src/widgets/fr amework.dart:3194:14) E/flutter (22236): #30 Element.updateChild (package:flutter/src/widgets/fram ework.dart:2988:12) E/flutter (22236): #31 SingleChildRenderObjectElement.mount (package:flutter /src/widgets/framework.dart:5445:14) E/flutter (22236): #32 Element.inflateWidget (package:flutter/src/widgets/fr amework.dart:3194:14) E/flutter (22236): #33 Element.updateChild (package:flutter/src/widgets/fram ework.dart:2988:12) E/flutter (22236): #34 SingleChildRenderObjectElement.mount (package:flutter /src/widgets/framework.dart:5445:14) E/flutter (22236): #35 Element.inflateWidget (package:flutter/src/widgets/fr amework.dart:3194:14) E/flutter (22236): #36 Element.updateChild (package:flutter/src/widgets/fram ework.dart:2988:12) E/flutter (22236): #37 ComponentElement.performRebuild (package:flutter/src/ widgets/framework.dart:4243:16) E/flutter (22236): #38 Element.rebuild (package:flutter/src/widgets/framewor k.dart:3947:5) E/flutter (22236): #39 ComponentElement._firstBuild (package:flutter/src/wid gets/framework.dart:4206:5) E/flutter (22236): #40 StatefulElement._firstBuild (package:flutter/src/widg ets/framework.dart:4381:11) E/flutter (22236): #41 ComponentElement.mount (package:flutter/src/widgets/f ramework.dart:4201:5) E/flutter (22236): #42 Element.inflateWidget (package:flutter/src/widgets/fr amework.dart:3194:14) E/flutter (22236): #43 Element.updateChild (package:flutter/src/widgets/fram ework.dart:2988:12) E/flutter (22236): #44 ComponentElement.performRebuild (package:flutter/src/ widgets/framework.dart:4243:16) E/flutter (22236): #45 Element.rebuild (package:flutter/src/widgets/framew

Ice-Coffey avatar Dec 30 '19 09:12 Ice-Coffey

VideoPlayerController is already initialized remove VideoPlayerController.initialize()

Zabster avatar Jan 19 '20 10:01 Zabster

i faced the same error on iOS, i deleted autoplay and auto initialize on ChewieController my problem solved. final networkVideo = networkVideos[pos]; _videoController = VideoPlayerController.network( networkVideos[pos].pitchingVideoUrl) ..initialize();

_chewieController = ChewieController( videoPlayerController: widget._videoPlayerController, looping: false, showControls: false, showControlsOnInitialize: false, aspectRatio: 0.6, errorBuilder: (context, errorMessage) { return Center( child: Text( errorMessage, style: TextStyle(color: Colors.white), ), ); }, );`

egeysn avatar Jun 14 '21 14:06 egeysn

i faced the same error on iOS, i deleted autoplay and auto initialize on ChewieController my problem solved. final networkVideo = networkVideos[pos]; _videoController = VideoPlayerController.network( networkVideos[pos].pitchingVideoUrl) ..initialize();

_chewieController = ChewieController( videoPlayerController: widget._videoPlayerController, looping: false, showControls: false, showControlsOnInitialize: false, aspectRatio: 0.6, errorBuilder: (context, errorMessage) { return Center( child: Text( errorMessage, style: TextStyle(color: Colors.white), ), ); }, );`

It does not work for me.

SalahAdDin avatar Aug 19 '21 11:08 SalahAdDin

same issue with me

halfaHalfawy avatar Mar 06 '23 12:03 halfaHalfawy

i faced the same error on iOS, i deleted autoplay and auto initialize on ChewieController my problem solved. final networkVideo = networkVideos[pos]; _videoController = VideoPlayerController.network( networkVideos[pos].pitchingVideoUrl) ..initialize();

_chewieController = ChewieController( videoPlayerController: widget._videoPlayerController, looping: false, showControls: false, showControlsOnInitialize: false, aspectRatio: 0.6, errorBuilder: (context, errorMessage) { return Center( child: Text( errorMessage, style: TextStyle(color: Colors.white), ), ); }, );`

This is worked for me!

encodeworksystems avatar Aug 11 '23 05:08 encodeworksystems