Show error if failed loading video

This commit is contained in:
Ming Ming 2021-08-29 23:22:10 +08:00
parent 2edc989a76
commit 2bdcaede9d

View file

@ -83,25 +83,31 @@ class _VideoViewerState extends State<VideoViewer> {
Wakelock.disable(); Wakelock.disable();
} }
void _initController(String url) { void _initController(String url) async {
_controller = VideoPlayerController.network( try {
url, _controller = VideoPlayerController.network(
httpHeaders: { url,
"Authorization": Api.getAuthorizationHeaderValue(widget.account), httpHeaders: {
}, "Authorization": Api.getAuthorizationHeaderValue(widget.account),
)..initialize().then((_) { },
widget.onLoaded?.call(); );
setState(() {}); await _controller.initialize();
WidgetsBinding.instance!.addPostFrameCallback((_) { widget.onLoaded?.call();
if (_key.currentContext != null) { setState(() {});
widget.onHeightChanged?.call(_key.currentContext!.size!.height); WidgetsBinding.instance!.addPostFrameCallback((_) {
} if (_key.currentContext != null) {
}); widget.onHeightChanged?.call(_key.currentContext!.size!.height);
}).catchError((e, stacktrace) { }
_log.shout("[initState] Filed while initialize", e, stacktrace);
}); });
_controller.addListener(_onControllerChanged); _controller.addListener(_onControllerChanged);
_isControllerInitialized = true; _isControllerInitialized = true;
} catch (e, stackTrace) {
_log.shout("[_initController] Failed while initialize", e, stackTrace);
SnackBarManager().showSnackBar(SnackBar(
content: Text(exception_util.toUserString(e)),
duration: k.snackBarDurationNormal,
));
}
} }
Widget _buildPlayer(BuildContext context) { Widget _buildPlayer(BuildContext context) {