play method
Implementation
@override
Future<bool> play(String? url) async {
if (_controller != null) _controller!.dispose();
Uri? uri = Uri.tryParse(url ?? "");
if (uri != null) {
// initialize the controller
_controller = VideoPlayerController.networkUrl(uri)
..initialize().then((_) {
// fire onInitialized() event
if (!isNullOrEmpty(widget.model.onInitialized)) {
WidgetsBinding.instance.addPostFrameCallback(
(_) => widget.model.onInitializedHandler());
}
// ensure the first frame is shown after the video is initialized, even before the play button has been pressed.
if (mounted) setState(() {});
});
_controller!.addListener(onVideoController);
}
return true;
}