检测Apple音乐歌曲播放完毕

问题描述 投票:3回答:1

我正在编写一个需要在歌曲播放完毕后制作动作的应用。我正在使用MPMusicPlayerController.applicationQueuePlayer()作为我的音乐播放器播放用户的苹果音乐。我想知道是否有一种方法可以检测用户歌曲何时播放完毕或队列结束时(或者有用)

ios swift mpmusicplayercontroller apple-music apple-musickit
1个回答
6
投票

MPMusicPlayerController有一个实例方法beginGeneratingPlaybackNotifications()。有三个Notifications将交付给订阅者:

  1. MPMusicPlayerControllerNowPlayingItemDidChange
  2. MPMusicPlayerControllerPlaybackStateDidChange
  3. MPMusicPlayerControllerVolumeDidChange

要检测播放歌曲或队列的时间,您可以使用MPMusicPlayerControllerNowPlayingItemDidChange

当您收到该通知时,请检查MPMusicPlayerControllers nowPlayingItem(请参阅Documentation)。如果歌曲结束而另一首歌曲播放,那么nowPlayingItem将会改变。如果整个队列完成并且没有播放,nowPlayingItem将有一个值nil

© www.soinside.com 2019 - 2024. All rights reserved.