iphone - remoteControlReceivedWithEvent 从未调用过

标签 iphone ios xcode audio-streaming avplayer

我正在尝试允许 Remote 或耳塞在应用处于后台或屏幕锁定时播放和暂停音频。所以在 viewDidLoad 中我有:

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

然后我有:

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



if (receivedEvent.type == UIEventTypeRemoteControl) {



switch (receivedEvent.subtype) {



    case UIEventSubtypeRemoteControlTogglePlayPause:

        [self playOrStop];

        break;



    case UIEventSubtypeRemoteControlPreviousTrack:


        break;



    case UIEventSubtypeRemoteControlNextTrack:


        break;



    default:

        break;

}

}


}

但是,它永远不会被调用。在后台运行已打开,AVSession 在 AppDelegate 中设置。我很茫然。

最佳答案

您可能还需要添加:

- (BOOL)canBecomeFirstResponder {
    return YES;
}

UIResponder 的任何子类都需要实现这个,否则它不会接受第一响应者状态。

关于iphone - remoteControlReceivedWithEvent 从未调用过,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13427572/

相关文章:

xcode - OS X 应用程序自动删除“编辑”菜单中的复制、粘贴等效键

ios - 在 dynamicLinks.handleUniversalLink(url) 的回调中接收 nil

iphone - NSDate 返回错误的年份

iphone - iOS - 延迟后的 Web 服务请求

c++ - 如果我将 Objective-C 用于低级代码,我的 iPhone 应用程序会受到性能影响吗?

iphone - iOS 3.1.2 : UIImageViews not respecting frame size

html 按钮在 iOS 设备上未正确呈现

iphone - iOS5 通知下拉菜单 : is there a way to know when the user presses the clear button on my apps notification on the iPhone?

jquery - 如何阻止 iOS 文本字段自动完成干扰 jQuery 自动完成?

iphone - 如何获取NSdocument目录下保存的视频