gpt4 book ai didi

objective-c - 没有收到远程控制事件

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:49:50 24 4
gpt4 key购买 nike

我正在尝试为我的应用程序使用锁定屏幕/正在播放控件,但没有收到任何事件。文档使它看起来非常简单,所以当我没有得到任何结果时我有点惊讶。我的应用程序需要接收远程控制事件以用于在设备上播放音频之外的目的。我试图通过让它用 NSLog 打印出一些确认来测试它。我是否需要使用文档中未提及的音频或媒体框架?我没有收到任何警告或错误,所以我认为这不应该有任何问题...任何关于为什么远程控制事件没有注册的见解将不胜感激

相关代码如下:

- (void)viewDidAppear:(BOOL)animated{
[super viewDidAppear:animated];

//Register for lock screen controls
[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
[self becomeFirstResponder];
}

- (void)viewWillDisappear:(BOOL)animated{
[super viewWillDisappear:animated];

//Unregister lock screen controls
[[UIApplication sharedApplication] endReceivingRemoteControlEvents];
[self resignFirstResponder];
}

- (BOOL)canBecomeFirstResponder{
return YES;
}

//Lock screen controls
- (void)remoteControlReceivedWithEvent:(UIEvent *)event{
NSLog(@"RECEIVED");
if (event.type == UIEventTypeRemoteControl) {

switch (event.subtype) {

case UIEventSubtypeRemoteControlTogglePlayPause:
NSLog(@"RECEIVED");
break;

case UIEventSubtypeRemoteControlPreviousTrack:
NSLog(@"RECEIVED");
break;

case UIEventSubtypeRemoteControlNextTrack:
NSLog(@"RECEIVED");
break;

default:
break;
}
}
}

最佳答案

除了 Jojas 提到的内容之外,您还需要确保您有一个事件的 Audio Session 。查看 [AVAudioSession setActive:withFlags:error:]。

关于objective-c - 没有收到远程控制事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10873267/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com