在 Flutter 中播放本地视频

Play local videos in Flutter

我需要在我的应用程序中播放资产视频,但视频播放器插件一直在缓冲但没有播放视频。但是,如果我使用网络视频,那么代码将完美运行。

这是我的代码,

class LandscapePlayer extends StatefulWidget {
  @override
  _LandscapePlayerState createState() => _LandscapePlayerState();
}

class _LandscapePlayerState extends State<LandscapePlayer> {
  FlickManager flickManager;

  @override
  void initState() {
    super.initState();
    flickManager = FlickManager(videoPlayerController:
         VideoPlayerController.asset('videos/first.mp4',),);
  }

  @override
  void dispose() {
    flickManager.dispose();
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: FlickVideoPlayer(
        flickManager: flickManager,
        preferredDeviceOrientation: [
          DeviceOrientation.landscapeRight,
          DeviceOrientation.landscapeLeft
        ],
        systemUIOverlay: [],
        flickVideoWithControls: FlickVideoWithControls(
          controls: LandscapePlayerControls(),
        ),
      ),
    );
  }
}

我已将视频文件添加为 pubspec.yaml 文件中的依赖项。我不知道为什么它适用于网络文件但不适用于资产文件。

我解决了这个问题。 video_player plugin uses Exo player plugin in android which is not working correctly in some devices(due to decoders or something). An easy alternative is to go by native_video_view 插件。