Youtube_player_flutter无法在iOS设备上播放视频

时间:2019-09-01 19:01:23

标签: ios flutter dart

我想在特定页面上以我的应用为背景播放YouTube视频。这意味着视频/播放器不可见。仅用于音频。

该程序包称为youtube_player_flutter ^ 4.1.0。 我已经在Android设备上测试了相同的代码,并且可以正常工作。但是,在Ios上却没有,当我返回上一页后,我收到此错误消息:

iOS => call stop, playerId 02a9ae4c-0fac-482d-a9f6-d668feffa2da

[VERBOSE-2:ui_dart_state.cc(148)] Unhandled Exception: PlatformException(evaluateJavaScript_failed, Failed evaluating JavaScript, JavaScript string was: 'loadById("RMPX_vgqQnM", 0)'
Error Domain=WKErrorDomain Code=3 "The WKWebView was invalidated" UserInfo={NSLocalizedDescription=The WKWebView was invalidated})
#0      StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:564:7)
#1      MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:316:33)
<asynchronous suspension>
#2      MethodChannelWebViewPlatform.evaluateJavascript (package:webview_flutter/src/webview_method_channel.dart:90:21)
#3      WebViewController.evaluateJavascript (package:webview_flutter/webview_flutter.dart:626:39)
#4      YoutubePlayerController._evaluateJS (package:youtube_player_flutter/src/youtube_player.dart:553:30)
#5      YoutubePlayerController.load (package:youtube_player_flutter/src/youtube_player.dart:572:7)
#6      _YoutubePlayerState.listener (package:youtube_<…>

以下代码在android上运行:

YoutubePlayer(
  context: context,
  videoId: _videoId,
  flags: YoutubePlayerFlags(
    hideControls: true,
    autoPlay: true,
  ),
  onPlayerInitialized: (YoutubePlayerController controller) {
    _videoController = controller;
    debugPrint("playing...");
  },
)

我会有所帮助。

2 个答案:

答案 0 :(得分:0)

İos模拟器对youtube播放器具有尴尬的抵抗力。在真实设备上尝试可能会有所帮助

答案 1 :(得分:0)

将这些行添加到Info.plist

<key>io.flutter.embedded_views_preview</key>
<true/>

可以帮助您