2012-05-07 17 views
2

私はAVPlayerを使ってアプリケーションでビデオを再生していますが、ビデオをバックグラウンドモードで再生したいのですが。AVPlayer背景でビデオを再生する

これは私が- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptionsに入れるものです:

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

とiもの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が印刷されます

私は別のものを追加する必要がありましたか?

+0

このリンクにアクセスしてください: http://stackoverflow.com/questions/4771105/how-do-i-get-my-avplayer-to-play-while-app-is-in-background – iMash

答えて

1

[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];とその他の調整が追加されました。すべてhereです。

+0

私の投稿を編集しますあなたが書いた後に – MTA

+1

待ってください。これはうまくいった?ビデオはバックグラウンドで動作しますか?インターネット上のすべての騒音から、私はiOSで背景ビデオが不可能だと思った! @MTA、可能であればご確認ください。 –

+0

@dev私はそれが動作することを確認することができます。デバイスをロックし、ホームボタンを押さないでください。あなたは 'UIApplicationDidEnterBackgroundNotification'のホームボタン登録をサポートすることもできますし、タイマーを使ってビデオを再起動すると少し遅れてしまいますが、それは何もしないほうがいいです。 – MacTeo

関連する問題