在 Flutter 中没有收到视频播放器的错误?
Not getting the error in Video Player in flutter?
我正在使用 flutter 团队提供的 video_player 包在我的 flutter 项目中实现视频播放器。连接互联网后一切正常。但是我的问题是我在关闭互联网时以及在向视频播放器控制器提供错误视频 url 时无法收到错误消息。下面是我的代码:-
videoPlayerController = VideoPlayerController.network(alertClipList[0]);
videoPlayerController.addListener(() {
print('here');
if(videoPlayerController.value.isBuffering){
print('buffering');
}else if(videoPlayerController.value.hasError){
print('error');
}else if(videoPlayerController.value.position == videoPlayerController.value.duration){
print('completed');
}
});
var temp = await videoPlayerController.initialize().then((value){
print('started');
if(videoPlayerController.value.isPlaying){
print('already playing');
return;
}
videoPlayerController.play();
}, onError: (error){
print(error);
print('error is here');
});
这里是简单的 UI 代码:
Widget JVideoPlayer() {
return AspectRatio(
aspectRatio: 16 / 9,
child: VideoPlayer(alertClipController.videoPlayerController));
}
我也使用下面的 exoplayer 实现
implementation 'com.google.android.exoplayer:exoplayer:2.16.1'
我通过从我的应用级别 build.gradle 文件 - 实现 'com.google.android.exoplayer:exoplayer:2.16.1' 中删除这一行解决了这个问题。我认为视频播放器包没有问题,exoplayer有问题
我正在使用 flutter 团队提供的 video_player 包在我的 flutter 项目中实现视频播放器。连接互联网后一切正常。但是我的问题是我在关闭互联网时以及在向视频播放器控制器提供错误视频 url 时无法收到错误消息。下面是我的代码:-
videoPlayerController = VideoPlayerController.network(alertClipList[0]);
videoPlayerController.addListener(() {
print('here');
if(videoPlayerController.value.isBuffering){
print('buffering');
}else if(videoPlayerController.value.hasError){
print('error');
}else if(videoPlayerController.value.position == videoPlayerController.value.duration){
print('completed');
}
});
var temp = await videoPlayerController.initialize().then((value){
print('started');
if(videoPlayerController.value.isPlaying){
print('already playing');
return;
}
videoPlayerController.play();
}, onError: (error){
print(error);
print('error is here');
});
这里是简单的 UI 代码:
Widget JVideoPlayer() {
return AspectRatio(
aspectRatio: 16 / 9,
child: VideoPlayer(alertClipController.videoPlayerController));
}
我也使用下面的 exoplayer 实现
implementation 'com.google.android.exoplayer:exoplayer:2.16.1'
我通过从我的应用级别 build.gradle 文件 - 实现 'com.google.android.exoplayer:exoplayer:2.16.1' 中删除这一行解决了这个问题。我认为视频播放器包没有问题,exoplayer有问题