在 Flutter 裏官方提供了一個 video_player
插件可以播放視頻。
先安裝依賴:
dependencies:
video_player: ^0.10.1+6
class _ShootIssuePageState extends State<ShootIssuePage> {
VideoPlayerController _controller;
Future _initializeVideoPlayerFuture;
@override
void initState() {
super.initState();
_controller = VideoPlayerController.file(文件);
_controller.setLooping(true);
_initializeVideoPlayerFuture = _controller.initialize();
}
@override
void dispose() {
super.dispose();
_controller.dispose();
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: FutureBuilder(//顯示縮略圖
future: _initializeVideoPlayerFuture,
builder: (context, snapshot) {
print(snapshot.connectionState);
if (snapshot.hasError) print(snapshot.error);
if (snapshot.connectionState == ConnectionState.done) {
return AspectRatio(
aspectRatio: 1 / 1,
// aspectRatio: _controller.value.aspectRatio,
child: VideoPlayer(_controller),
);
} else {
return Center(
child: CircularProgressIndicator(),
);
}
},
),
);
}
}