Iphone 有没有办法获取有关上一首iPod歌曲的信息?

Iphone 有没有办法获取有关上一首iPod歌曲的信息?,iphone,ios,notifications,mpmediaitem,Iphone,Ios,Notifications,Mpmediaitem,我试图在下一首歌曲开始播放之前存储歌曲的播放头时间(MPMediaItem)。你会怎么做 有没有像MPMusicLayerControllerNowPlayingItemDidChangeNotification这样的东西在歌曲更改之前触发?我认为,现在还没有这样的通知(歌曲更改之前通知)。 我只是发现只有两个通知,可以收听歌曲的变化状态 MPMusicPlayerControllerNowPlayingItemDidChangeNotification, MPMusicPlayerContro

我试图在下一首歌曲开始播放之前存储歌曲的播放头时间(MPMediaItem)。你会怎么做


有没有像MPMusicLayerControllerNowPlayingItemDidChangeNotification这样的东西在歌曲更改之前触发?

我认为,现在还没有这样的通知(歌曲更改之前通知)。 我只是发现只有两个通知,可以收听歌曲的变化状态

MPMusicPlayerControllerNowPlayingItemDidChangeNotification,
MPMusicPlayerControllerPlaybackStateDidChangeNotification,
苹果文档:


简单:当歌曲更改时,将一个变量
foo
设置为当前时间,并将另一个变量
bar
设置为新歌的当前播放时间(通常为
0.0
),当歌曲再次更改时,从当前时间中减去
foo
的值,然后添加
条的值
;结果是刚刚播放的歌曲的最终偏移量


您还必须处理快进、快退、停止和暂停,但您可以通过监视播放状态和查询歌曲的当前播放时间来实现这一点,以便根据需要保持同步。

我认为在更改媒体项之前不会收到通知。最好的方法似乎是使用计时器不断地将值从media player复制到一个变量以存储NSTimeInterval,直到媒体项更改或media player状态更改。

您如何处理快进、快退、停止和暂停,更具体地说,请收听
MPMusicLayerController播放BackstateDidChangeNotification