我正在尝试使用 just_audio 和 audio_service 制作音乐应用程序,但我一直在实现该onAddQueueItem
功能。我找不到在 just_audio 上附加/修改队列的方法,只有如何通过player.setAudioSource
.
我是打算player.setAudioSource
用来更改当前队列还是我错过了什么?
我正在尝试使用 just_audio 和 audio_service 制作音乐应用程序,但我一直在实现该onAddQueueItem
功能。我找不到在 just_audio 上附加/修改队列的方法,只有如何通过player.setAudioSource
.
我是打算player.setAudioSource
用来更改当前队列还是我错过了什么?
队列/播放列表是在 just_audio 中通过创建一个ConcatenatingAudioSource
提供一个一个接一个地播放的音频源列表来实现的。该类的文档列出了以下方法,几乎所有这些方法都处理附加/修改队列:
因此,您在实施时想要onAddQueueItem
的是第一个,add
:
Future<void> onAddQueueItem(MediaItem mediaItem) async {
// Add it to the player
await concatenatingAudioSource.add(AudioSource.uri(Uri.parse(mediaItem.id)));
// Broadcast the state change to clients
queue.add(mediaItem);
await AudioServiceBackground.setQueue(queue);
}