如何在底部面板中存储当前音频信息(AVAudioPlayer,Swift)

时间:2015-10-11 10:54:10

标签: swift audio ios9 avplayer avaudiosession

我正在使用AVPlayer播放音频,但是当它播放时,底部的ios面板中没有关于它的任何信息

那么我如何在这里添加有关我的音频的信息,并将我的UISlider与系统音量级别同步,以改变音量?在锁定屏幕上制作播放和暂停按钮非常重要,但我不知道如何做到这一点。我也不了解obj-c,这就是为什么堆栈上的一些例子对我来说无法使用的原因。

1 个答案:

答案 0 :(得分:0)

可能重复,请检查此answer

如果链接断开,您似乎需要使用以下命令启用远程控制事件:

[[UIApplication sharedApplication] beginReceivingRemoteControlEvents]; 

这应该启用播放/暂停按钮将控件发送到您的应用程序。您需要手动设置正在播放的信息......

// Swift code, will need converting
var mpic = MPNowPlayingInfoCenter.defaultCenter()
mpic.nowPlayingInfo = [
    MPMediaItemPropertyTitle:"This Is a Test",
    MPMediaItemPropertyArtist:"Matt Neuburg"
]

您还需要对收到的控制事件采取行动:

- (void)remoteControlReceivedWithEvent:(UIEvent *)receivedEvent {

    if (receivedEvent.type == UIEventTypeRemoteControl) {

        switch (receivedEvent.subtype) {

            case UIEventSubtypeRemoteControlTogglePlayPause:
                [self playOrStop: nil];
                break;

            case UIEventSubtypeRemoteControlPreviousTrack:
                [self previousTrack: nil];
                break;

            case UIEventSubtypeRemoteControlNextTrack:
                [self nextTrack: nil];
                break;

            default:
                break;
        }
    }
}