【发布时间】:2020-02-25 08:14:58
【问题描述】:
我使用chewie 包在颤动中播放视频,当我播放视频并退出页面时,dispose 工作正常,但是当我使用全屏并尝试退出页面时,音频/视频仍然会播放。它说:在 null 上调用了 dispose
这是我的代码:
class _ChewieListItemState extends State<ChewieListItem> {
ChewieController _chewieController;
@override
Widget build(BuildContext context) {
return Padding(
padding: const EdgeInsets.all(8.0),
child: Chewie(
controller:_chewieController ,
),
);
}
@override
void initState() {
super.initState();
// Wrapper on top of the videoPlayerController
_chewieController = ChewieController(
videoPlayerController: widget.videoPlayerController,
aspectRatio: 16 / 9,
// Prepare the video to be played and display the first frame
autoInitialize: true,
looping: widget.looping,
autoPlay: false,
allowFullScreen: true,
allowedScreenSleep: false,
// Errors can occur for example when trying to play a video
// from a non-existent URL
errorBuilder: (context, errorMessage) {
return Center(
child: Text(
'Network Error, please try again',
style: TextStyle(color: Colors.white),
),
);
},
);
}
@override
void dispose() {
super.dispose();
widget.videoPlayerController.dispose();
_chewieController.dispose();
}
}
【问题讨论】:
-
我也在寻找在flutter中使用vimeo的解决方案,因为你发现的东西还很少!
-
@karl 123 你找到解决方案了吗,在我的应用程序中遇到同样的问题
标签: android ios flutter dart video-player