Flutter 多个 VideoPlayer 同时播放互相暂停?音频焦点(Audio Focus)问题及解决方案*
在 Flutter 开发中,如果你在同一个页面中使用多个 VideoPlayer(例如多个小视频窗口),你可能会遇到一个非常诡异但又“看似合理”的问题:
其实,这个问题的核心并不在 Flutter,而在系统层面的 —— 音频焦点(Audio Focus)管理机制。
修改前:
_controller = VideoPlayerController.asset(widget.path);
修改后:
_controller = VideoPlayerController.asset(
widget.path,
videoPlayerOptions: VideoPlayerOptions(
mixWithOthers: true, // ⭐ 关键代码),
);
加上这一行代码之后:
多个视频可以同时播放
音频不会互相打断
小窗口视频、预览视频、背景视频都能正常共存
同一个 App 内不再“互相残杀”