Flutter 无法在Flatter中播放视频

Flutter 无法在Flatter中播放视频,flutter,Flutter,我尝试在flutter中播放视频,当我启动代码时,我遇到了这个问题 未处理的异常:PlatformException(通道错误,无法在通道上建立连接,null,null) 这是我的代码: 我创建了一个类VideoApp extend statefulwidget _控制器包含视频 import 'package:video_player/video_player.dart'; import 'package:flutter/material.dart'; void main() => r

我尝试在flutter中播放视频,当我启动代码时,我遇到了这个问题

未处理的异常:PlatformException(通道错误,无法在通道上建立连接,null,null)

这是我的代码:

我创建了一个类VideoApp extend statefulwidget

_控制器包含视频

import 'package:video_player/video_player.dart';
import 'package:flutter/material.dart';

void main() => runApp(VideoApp());

class VideoApp extends StatefulWidget {
  @override
  _VideoAppState createState() => _VideoAppState();
}

class _VideoAppState extends State<VideoApp> {
  VideoPlayerController _controller;

  @override
  void initState() {
    super.initState();
    _controller = VideoPlayerController.network(
        'http://www.sample-videos.com/video123/mp4/720/big_buck_bunny_720p_20mb.mp4')
      ..initialize().then((_) {
        // Ensure the first frame is shown after the video is initialized, even before the play button has been pressed.
        setState(() {});
      });
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Video Demo',
      home: Scaffold(
        body: Center(
          child: _controller.value.initialized
              ? AspectRatio(
                  aspectRatio: _controller.value.aspectRatio,
                  child: VideoPlayer(_controller),
                )
              : Container(),
        ),
        floatingActionButton: FloatingActionButton(
          onPressed: () {
            setState(() {
              _controller.value.isPlaying
                  ? _controller.pause()
                  : _controller.play();
            });
          },
          child: Icon(
            _controller.value.isPlaying ? Icons.pause : Icons.play_arrow,
          ),
        ),
      ),
    );
  }

  @override
  void dispose() {
    super.dispose();
    _controller.dispose();
  }
}
import'package:video_player/video_player.dart';
进口“包装:颤振/材料.省道”;
void main()=>runApp(VideoApp());
类VideoApp扩展了StatefulWidget{
@凌驾
_VideoAppState createState()=>\u VideoAppState();
}
类\u VideoAppState扩展了状态{
视频播放控制器\u控制器;
@凌驾
void initState(){
super.initState();
_控制器=VideoPlayerController.network(
'http://www.sample-videos.com/video123/mp4/720/big_buck_bunny_720p_20mb.mp4')
…初始化()。然后(u41;{
//确保在视频初始化后,甚至在按下播放按钮之前,显示第一帧。
setState((){});
});
}
@凌驾
小部件构建(构建上下文){
返回材料PP(
标题:“视频演示”,
家:脚手架(
正文:中(
子项:_controller.value.initialized
?AspectRatio(
aspectRatio:_controller.value.aspectRatio,
子项:视频播放器(_控制器),
)
:Container(),
),
浮动操作按钮:浮动操作按钮(
已按下:(){
设置状态(){
_controller.value.isPlaying
?_控制器暂停()
:_controller.play();
});
},
子:图标(
_controller.value.isplay?图标。暂停:图标。播放箭头,
),
),
),
);
}
@凌驾
无效处置(){
super.dispose();
_controller.dispose();
}
}

我在这里试过,效果很好。您可能有网络问题,请检查您的Internet连接…即使我更改了
VideoPlayerController.network,也可以http://www.sample-videos.com/video123/mp4/720/big_buck_bunny_720p_20mb.mp4)
视频播放器控制器.asset(“assets/videos/test.mp4”)
它对我不起作用。请检查您是否有最新版本的Flatter和插件,如果失败,请发布堆栈跟踪。