3

我想让我的应用程序在多任务处理时使用锁定屏幕上的音频按钮。(是的,就像 Pandora。)我希望使用什么 API?

4

2 回答 2

2

请参阅多媒体文档的远程控制。基本上,您只需要调用-beginReceivingRemoteControlEvents您的共享应用程序实例,然后将某些东西(可能是您的主视图控制器)注册为第一响应者并-remoteControlReceivedWithEvent:在其上实现该方法。您将从锁屏控件和耳机答题器以及多任务抽屉左侧的控制按钮中获取事件。要在您的应用程序不是最重要的时候播放音频,您还应该查看有关背景音频的信息。

于 2010-06-28T17:54:05.650 回答
0

现在更容易了,从 iOS 7 开始。这是播放/暂停切换(耳机按钮)的示例。有关更多选项,请参阅 MPRemoteCommandCenter 和 MPRemoteCommand 的文档。

    MPRemoteCommandCenter *commandCenter = [MPRemoteCommandCenter sharedCommandCenter];

    [commandCenter.togglePlayPauseCommand addTargetWithHandler:^MPRemoteCommandHandlerStatus(MPRemoteCommandEvent * _Nonnull event) {
        NSLog(@"toggle button pressed");
        return MPRemoteCommandHandlerStatusSuccess;
    }];

或者,如果您更喜欢使用方法而不是块:

    [commandCenter.togglePlayPauseCommand addTarget:self action:@selector(toggleButtonAction)];

停止:

    [commandCenter.togglePlayPauseCommand removeTarget:self];

或者:

    [commandCenter.togglePlayPauseCommand removeTarget:self action:@selector(toggleButtonAction)];

您需要将其添加到文件的包含区域:

@import MediaPlayer;
于 2015-09-03T10:52:59.607 回答