You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter audio_service切换播放列表后无法自动播放问题求助

问题解决

1. 基础语法错误修正

你合并后的函数里存在一个关键语法问题:pageManager.play只是引用了方法对象,并没有执行调用。正确写法需要加上括号触发方法执行:

void changeAndPlayPlaylist() async {
  final pageManager = getIt<PageManager>();
  pageManager.removeAll();
  await pageManager.loadPlaylist2();
  pageManager.play(); // 补充括号,调用播放方法
}

2. 确保播放列表加载后的状态同步

如果修正语法后仍无法自动播放,需要检查loadPlaylist2的内部实现:

  • 确认该方法加载新列表后,是否将播放器的当前索引设置为0(指向第一个待播放项)。
  • 如果loadPlaylist2内部使用just_audio的setAudioSource方法,要保证该方法被await,确保外部的await pageManager.loadPlaylist2()能等待到列表加载完成。

额外验证点(针对Audio Service场景)

如果基于Audio Service实现,还需确认:

  • PageManager的play()方法是否正确转发了播放指令到Audio Service。
  • 新列表加载完成后,Audio Service的播放队列是否已更新,且当前播放位置已指向新队列的首个元素。

内容的提问来源于stack exchange,提问作者elle D

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 09:55:28