【问题标题】:MPMoviePlayerController Background playingMPMoviePlayerController 后台播放
【发布时间】:2015-06-01 12:43:55
【问题描述】:

好的,伙计们,我有一个问题。我是流 MPMoviePlayerController,我希望它在后台播放音频,我已经实现了这一点。

这就是我在-didFinishLaunchingWithOptions: 中所做的事情

    AVAudioSession *audioSession = [AVAudioSession sharedInstance];
    [audioSession setCategory:AVAudioSessionCategoryPlayback error:nil];
    [audioSession setActive:YES error:nil];

    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
    [self becomeFirstResponder];

现在每当应用程序调用-applicationWillResignActive: 我发布通知以继续播放。这有效,但它是一个丑陋的修复。因为在声音停止和被调用的通知之间有第二次延迟。因此,播放会停止一秒钟,然后通过调用仅显示 [viewPlayer play]; 的通知再次继续播放

和其他许多都实现了流畅的后台播放。每当您进入后台模式时,就像 Spotify 或其他应用程序一样,声音中没有声音滞后/削波。每当我按下主页按钮或锁定手机时,这真的很烦人。

是的,我确实为播放设置了背景模式。

我也试过-applicationDidEnterBackground:,但这个通知更慢。它在-applicationWillResignActive:之后出现

我不知道如何解决这个问题,也不知道其他人是如何实现的。我已经浏览了几乎所有其他类似的问题。没有人有我的问题。

提前致谢。

【问题讨论】:

    标签: objective-c mpmovieplayercontroller avaudiosession


    【解决方案1】:

    我最近使用 frameworkUIView 中内联流式传输 YouTube 视频。这个框架在MPMoviePlayerController 上有一个类别,效果很好。转到后台时您注意到音乐发生了变化,但仍然可以接受。

    类别可以在这里找到:

    MPMoviePlayerController+BackgroundPlayback.h MPMoviePlayerController+BackgroundPlayback.m

    【讨论】:

    • 谢谢老兄,但这并没有帮助。我试图摆脱背景音乐的变化。
    猜你喜欢
    • 2014-04-02
    • 1970-01-01
    • 2013-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-23
    • 1970-01-01
    相关资源
    最近更新 更多