当您MediaItem在audio_service 中设置时,您还不知道歌曲的持续时间,因为此时 just_audio还没有告诉您任何更改。
在常见问题解答说,更新MediaItem如下:
modifiedMediaItem = mediaItem.copyWith(duration: duration);
AudioServiceBackground.setMediaItem(modifiedMediaItem);
Run Code Online (Sandbox Code Playgroud)
但我不清楚如何或在哪里做到这一点。GitHub 存储库中的示例应用程序通过提供预先计算的时间来回避这个问题。( GitHub 问题)
我如何以及在哪里将持续时间从 just_audio 传输到 audio_service 以便它可以更新侦听器?
我发现了一些有用的东西,所以我在下面添加了一个答案。