0
我正在製作處理音樂播放的iPhone音樂應用程序&暫停並保留其自己的播放列表。我試圖讓播放/暫停遙控功能(在耳塞和滑動屏幕上)在我的應用程序中播放音樂。MPRemoteCommandCenter事件處理程序從未觸發
這裏是我放入與音樂播放器相關的初始化方法(它是MPMusicPlayerController的一個實例,我確定通過調試調用這段代碼)的代碼,我將討論這個問題I
[self.musicController beginGeneratingPlaybackNotifications];
// listen to remote control events
[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
if ([self canBecomeFirstResponder]) {
NSLog(@"Can be first responder");
[self becomeFirstResponder];
NSLog([NSString stringWithFormat: @"is first responder now? %@", [self isFirstResponder] ? @"yes" : @"no"]);
} else {
NSLog(@"Cannot be first responder");
}
MPRemoteCommandCenter *commandCenter = [MPRemoteCommandCenter sharedCommandCenter];
[commandCenter.togglePlayPauseCommand addTargetWithHandler:^MPRemoteCommandHandlerStatus(MPRemoteCommandEvent *event) {
NSLog(@"TK: toggle command");
return nil;
}];
[commandCenter.playCommand addTargetWithHandler:^MPRemoteCommandHandlerStatus(MPRemoteCommandEvent *event) {
NSLog(@"TK: play command");
return nil;
}];
[commandCenter.pauseCommand addTargetWithHandler:^MPRemoteCommandHandlerStatus(MPRemoteCommandEvent *event) {
NSLog(@"TK: pause command");
return nil;
}];
我的問題:「M代碼後,面對加入上面的代碼後,當我按下滑屏幕上的播放/暫停按鈕,當音樂在我的應用程序打,沒有調試信息中顯示出來日誌,意味着事件處理程序塊沒有被觸發。
當我在我的應用程序中播放音樂時,當我按下蘋果耳機上的播放/暫停按鈕時,系統開始在我的iOS音樂庫中播放隨機音樂,並且它播放的歌曲未出現在播放我的應用程序列表,這意味着除了通過執行上述步驟外,沒有任何合法的方法可以從我的應用程序播放此歌曲。
注意:日誌的輸出爲「不能成爲第一響應者」。