youtube_player_flutter
youtube_player_flutter copied to clipboard
InAppWebViewPlatform.instance is not set!
Describe the bug I ran the test which is provided in "packages/youtube_player_flutter/test/youtube_player_flutter_test.dart" and got this error, Could you please tell me what is the problem?
══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
The following assertion was thrown building RawYoutubePlayer(dirty, dependencies:
[InheritedYoutubePlayer], state: _RawYoutubePlayerState#bb3c2):
A platform implementation for flutter_inappwebview
has not been set. Please ensure that an
implementation of InAppWebViewPlatform
has been set to InAppWebViewPlatform.instance
before use.
For unit testing, InAppWebViewPlatform.instance
can be set with your own test implementation.
'package:flutter_inappwebview_platform_interface/src/in_app_webview/platform_inappwebview_widget.dart':
Failed assertion: line 202 pos 7: 'InAppWebViewPlatform.instance != null'
The relevant error-causing widget was: RawYoutubePlayer RawYoutubePlayer:file:///Users/roostap/.pub-cache/hosted/pub.dev/youtube_player_flutter-9.0.1/lib/src/player/youtube_player.dart:306:20
When the exception was thrown, this was the stack: #2 new PlatformInAppWebViewWidget (package:flutter_inappwebview_platform_interface/src/in_app_webview/platform_inappwebview_widget.dart:202:7) #3 new InAppWebView.fromPlatformCreationParams (package:flutter_inappwebview/src/in_app_webview/in_app_webview.dart:28:33) #4 new InAppWebView (package:flutter_inappwebview/src/in_app_webview/in_app_webview.dart:295:13) #5 _RawYoutubePlayerState.build (package:youtube_player_flutter/src/player/raw_youtube_player.dart:75:14) #6 StatefulElement.build (package:flutter/src/widgets/framework.dart:5592:27) #7 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5480:15) #8 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11) #9 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7) #10 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5462:5) #11 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5634:11) #12 ComponentElement.mount (package:flutter/src/widgets/framework.dart:5456:5) ... Normal element mounting (4 frames) #16 Element.inflateWidget (package:flutter/src/widgets/framework.dart:4335:16) #17 MultiChildRenderObjectElement.inflateWidget (package:flutter/src/widgets/framework.dart:6893:36) #18 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6905:32) ... Normal element mounting (332 frames) #350 Element.inflateWidget (package:flutter/src/widgets/framework.dart:4335:16) #351 MultiChildRenderObjectElement.inflateWidget (package:flutter/src/widgets/framework.dart:6893:36) #352 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6905:32) ... Normal element mounting (457 frames) #809 Element.inflateWidget (package:flutter/src/widgets/framework.dart:4335:16) #810 Element.updateChild (package:flutter/src/widgets/framework.dart:3840:20) #811 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16) #812 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7) #813 ProxyElement.update (package:flutter/src/widgets/framework.dart:5809:5) #814 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15) #815 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16) #816 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5643:11) #817 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7) #818 StatefulElement.update (package:flutter/src/widgets/framework.dart:5666:5) #819 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15) #820 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16) #821 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7) #822 ProxyElement.update (package:flutter/src/widgets/framework.dart:5809:5) #823 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15) #824 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16) #825 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7) #826 ProxyElement.update (package:flutter/src/widgets/framework.dart:5809:5) #827 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15) #828 _RawViewElement._updateChild (package:flutter/src/widgets/view.dart:291:16) #829 _RawViewElement.update (package:flutter/src/widgets/view.dart:378:5) #830 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15) #831 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5505:16) #832 Element.rebuild (package:flutter/src/widgets/framework.dart:5196:7) #833 StatelessElement.update (package:flutter/src/widgets/framework.dart:5556:5) #834 Element.updateChild (package:flutter/src/widgets/framework.dart:3824:15) #835 RootElement._rebuild (package:flutter/src/widgets/binding.dart:1354:16) #836 RootElement.update (package:flutter/src/widgets/binding.dart:1332:5)
To Reproduce Just run the test that is written in this address : "packages/youtube_player_flutter/test/youtube_player_flutter_test.dart"
index.html (project, not build) should be modified. Make sure to add this tag before closing <head>
tag, when running in web browser:
<script
type="application/javascript"
src="/assets/packages/flutter_inappwebview_web/assets/web/web_support.js"
defer
></script>
Reference: #https://github.com/pichillilorenzo/flutter_inappwebview/issues/1468