【问题标题】:Tracking the position of a half played media item on iPhone/iPad跟踪 iPhone/iPad 上播放一半的媒体项目的位置
【发布时间】:2012-03-27 21:00:45
【问题描述】:

我想跟踪媒体项目(歌曲或播客)的最后位置。我可以使用 MPMediaItem 的 MPMediaItemPropertyPlaybackDuration 属性访问总持续时间。我对存储和跟踪上次播放位置的方式感兴趣。

每个玩家都是自己做的吗?如果我只是用 MediaPlayer 播放实体,我会免费获得它吗?

我还没有连接媒体播放器来播放项目,我想了解是否需要实现自己的书签方法。

【问题讨论】:

    标签: iphone ios ipad mpmediaitem


    【解决方案1】:
    [audioPlayer currentPlaybackTime]  
    

    会给你当前的播放时间。我在播客播放器上有一个恢复功能,我只是观察以下中断:

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(playPlaybackStateChanged:) name:MPMoviePlayerPlaybackStateDidChangeNotification object:self.audioPlayer];
    

    然后在回调函数内部,检查状态:

     if(self.audioPlayer.playbackState == MPMoviePlaybackStateInterrupted)
    

    并在中断时记录播放时间...

    【讨论】:

    • 谢谢。很好的参考。如果曲目在完成之前发生更改,我是否必须将曲目的 currentPlaybackTime 保存在我自己的存储中?我希望以后能记住它放在哪里。不确定 currentPlaybackTime 是否以某种方式持续存在,或者我必须这样做。
    • 我使用 NSUserDefaults 保存它
    • 谢谢...为我节省了不少时间。
    • 默认情况下它不会持久化(据我所知)
    • 如果您在正在播放的两个曲目之间切换,您可以在播放过程中看到苹果自己的媒体播放器跳跃。它首先将指针放在开头,然后跳转到该位置。所以我猜测它可能会做类似的事情,但不想假设。
    猜你喜欢
    • 1970-01-01
    • 2018-10-15
    • 2015-11-20
    • 1970-01-01
    • 2021-09-09
    • 2016-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多