使用AVAudioPlayer在后台播放音频iOS 9

问题描述:

音频不在后台使用AVAudioPlayer iOS 9在前台播放时播放。使用AVAudioPlayer在后台播放音频iOS 9

我已经设置所需的背景模式应用程序播放音频或数据流通过AirPlay的音频/视频”中的Info.plist

我还检查音频,背景能力

使用的代码:

@property (nonatomic, strong) AVAudioPlayer *ringtonePlayer; 


    NSString *ringtonePath = [[NSBundle mainBundle] pathForResource:@"incoming" ofType:@"wav"]; 
    if ([ringtonePath length] <= 0) { 
     NSLog(@"Can't find incoming sound file"); 
     return; 
    } 

    self.ringtonePlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL URLWithString:ringtonePath] error:nil]; 
    self.ringtonePlayer.delegate = self; 
    self.ringtonePlayer.numberOfLoops = -1; 


    NSError *error = nil; 
    if (![[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback 
               error:&error]) { 
     NSLog(@"Unable to reroute audio: %@", [error localizedDescription]); 
    } else { 
     [[AVAudioSession sharedInstance] setActive:YES error:&error]; 
    } 

    self.ringtonePlayer.volume = 1.0f; 
    [self.ringtonePlayer play]; 

请帮助,提前致谢。

我使用下面的代码在后台打开,并且不需要修改info.plist文件。

func setupPlayBackground(){ 

     do { 
      try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback) 
      try AVAudioSession.sharedInstance().setActive(true) 

     } catch let error { 

      print(error.localizedDescription) 

     } 

    }