【问题标题】:How can i get current time of background audio? (iOS)如何获取背景音频的当前时间? (iOS)
【发布时间】:2016-02-20 12:08:10
【问题描述】:

我有音频应用程序。对于收听音频,我使用 AVFoundationFramework 并在后台使用 MPNowPlayingInfoCenter 提供的信息。如果用户继续到其他屏幕,则正在播放音频。我想向他展示有关在这个新屏幕上播放音频的信息。 最大的问题是获取当前时间在背景音频中播放。 我怎样才能得到它?

P.S.:音频长度主要等于一小时。

P.P.S.:我很高兴得到任何语言的答案(obj-c/Swift)

编辑:在 iOS 远程中心显示真实信息,我只需要在代码中获取它...截图:http://postimg.org/image/9lv60eb1n/

【问题讨论】:

    标签: ios xcode avfoundation background-audio mpnowplayinginfocenter


    【解决方案1】:

    您可以通过使用获取音频的当前时间

    MPNowPlayingInfoPropertyElapsedPlaybackTime

    例如像

    if let nowPlayingInfoDict = MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo
    {
        let elapsedTimeString = nowPlayingInfoDict["MPNowPlayingInfoPropertyElapsedPlaybackTime"]
    }
    

    其中的值是一个 NSNumber,表示该项目到目前为止播放的秒数。

    【讨论】:

    • 你有没有字典(如果有,你在里面看到的各种键和值是什么)?
    • 我有一本字典,其中包括我在 MPNowPlayingInfoCenter 中写的所有信息:标题、名称等。但 ElapsedPlaybackTime 为 NULL
    • 哦,你是在播放本地文件还是从远程站点播放一些流媒体的东西(在这种情况下没有固定的持续时间)?
    • 在线和离线。在这两种情况下,我都知道 AVPlayer 的持续时间和当前时间,但对于背景音频在这两种情况下都不起作用
    • 在 iOS 远程中心显示真实信息,我只需要在代码中获取它...截图:postimg.org/image/9lv60eb1n
    【解决方案2】:

    我仍然不知道如何制作(从远程中心获取信息),但我通过音频播放器的单例解决了它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多