当人们将同一首歌曲两次添加到队列中时,我对我的应用程序 InstanTunes 有一些抱怨,该队列在 iPod 应用程序中排队。
[[MPMusicPlayerController iPodMusicPlayer] setQueueWithItemCollection:collection];
基本上,问题是当用户离开我的应用程序并继续通过 iPod 应用程序收听他们的队列时,InstanTunes 失去了对正在发生的事情的所有控制和理解。返回 InstanTunes 时,我遇到了正在播放歌曲的问题,由 [musicPlayer nowPlayingItem] 给出;在我的 MPMediaItems 的 NSMutableArray 中两次,但我不知道它的哪个实例是正在播放的歌曲。这是一个简单的图表来说明:
索引 0 处的歌曲 A 正在播放吗?还是播放索引 2 的歌曲 A?
当用户返回我的应用程序时,谁能想到一种方法让我能够分辨出正在播放哪个“歌曲 A”实例?据我所知,我无法标记要在 iPod 应用程序中播放的 MPMediaItems。
这真的很烦人,因为我不想删除两次添加同一首歌曲的能力,但这会导致无数问题。
任何帮助、见解或建议将不胜感激。