2

我正在使用 AVPlayer 在我的应用程序中播放视频,现在我想让视频在后台模式下播放。

这就是我放入的内容- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

[[AVAudioSession sharedInstance] setDelegate: self];    
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];

我还添加到 plist:必需的背景模式-> 应用程序播放音频

我也添加了这个:

-(void)viewDidAppear:(BOOL)animated{
    [super viewDidAppear:animated];
    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
    [self becomeFirstResponder];
}

- (BOOL)canBecomeFirstResponder {
    return YES;
}

- (void)remoteControlReceivedWithEvent:(UIEvent *)event {
    switch (event.subtype) {
        case UIEventSubtypeRemoteControlTogglePlayPause:
            NSLog(@"4");
            break;
        case UIEventSubtypeRemoteControlPlay:
            break;
        case UIEventSubtypeRemoteControlPause:
            NSLog(@"3");
            break;
        case UIEventSubtypeRemoteControlNextTrack:
            NSLog(@"2");
            break;
        case UIEventSubtypeRemoteControlPreviousTrack:
            NSLog(@"1");
            break;
        default:
            break;
    }
}

当我将应用程序移到后台并按下按钮时,nslog 会打印到控制台

我需要添加其他东西吗?

4

1 回答 1

1

只需添加[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];和其他一些调整。都在这里

于 2012-05-07T08:07:14.320 回答