[英]MPRemoteCommandCenter pause/play button not toggling?
我在MPRemoteCommandCenter中获取播放和暂停按钮切换时遇到问题。 无论出于何种原因,音频和事件都将正常工作,但命令中心不会将播放按钮更改为暂停按钮。 这是我的代码......
- (void)setupMPRemoteCommandCenter{
MPRemoteCommandCenter *commandCenter = [MPRemoteCommandCenter sharedCommandCenter];
MPRemoteCommand *play = [commandCenter playCommand];
[play setEnabled:YES];
[play addTarget:self action:@selector(playAudio:)];
MPRemoteCommand *pause = [commandCenter pauseCommand];
[pause setEnabled:YES];
[pause addTarget:self action:@selector(playAudio:)];
[commandCenter.skipBackwardCommand setPreferredIntervals:@[@30.0]];
MPRemoteCommand *skipBackwards = [commandCenter skipBackwardCommand];
[skipBackwards setEnabled:YES];
[skipBackwards addTarget:self action:@selector(skipBackwardEvent:)];
[commandCenter.skipForwardCommand setPreferredIntervals:@[@30.0]];
MPRemoteCommand *skipForwards = [commandCenter skipForwardCommand];
[skipForwards setEnabled:YES];
[skipForwards addTarget:self action:@selector(skipForwardEvent:)];
}
-(void)playAudio: (MPRemoteCommandHandlerStatus *)event{
[self playAction];
//playAction handles the audio pausing and toggling the play button on the app
}
让我知道,如果你们能想到任何事情,我会很乐意帮助你。 这让我疯了
关于我如何解决这个问题的一些指示。 阅读苹果文档,它说“您的应用程序必须是”正在播放“应用程序。应用程序在开始播放音频之前不会接收远程控制事件”
所以先开始播放音频。
MPRemoteCommandCenter是一个相当自立的模块。 setEnabled用于明确表示不支持某些内容。 在事件期间不要将它用作切换,AVFoundation将自己处理。
另请注意,我在模拟器中切换问题,它在设备上切换正常,但在模拟器中没有切换,这需要花费16个小时才能搞清楚:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.