iOS后台播放音频文件


iOS4之后就支持后台播放音频了。只需下面两步就可以实现后台播放音频操作了:

1、在Info.plist中,添加"Required background modes"键,其值设置如下图所示:


2、添加AVFoundation框架,然后再添加如下两段代码

添加后台播放代码:

  1. //后台播放音频设置   
  2.     AVAudioSession *session = [AVAudioSession sharedInstance];    
  3.     [session setActive:YES error:nil];    
  4.     [session setCategory:AVAudioSessionCategoryPlayback error:nil];   

以及设置app支持接受远程控制事件代码:

  1. //让app支持接受远程控制事件   
  2. [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];  
设置app支持接受远程控制事件,其实就是在dock中可以显示应用程序图标,同时点击该图片时,打开app,如下图所示:


下面是后台播放音频的完整测试代码:

  1. //后台播放音频设置   
  2. AVAudioSession *session = [AVAudioSession sharedInstance];    
  3. [session setActive:YES error:nil];    
  4. [session setCategory:AVAudioSessionCategoryPlayback error:nil];   
  5.   
  6. //让app支持接受远程控制事件   
  7. [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];  
  8.   
  9. //播放背景音乐   
  10. NSString *musicPath = [[NSBundle mainBundle] pathForResource:@"background" ofType:@"mp3"];  
  11. NSURL *url = [[NSURL alloc] initFileURLWithPath:musicPath];  
  12.   
  13. // 创建播放器   
  14. AVAudioPlayer *player = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:nil];  
  15. [url release];  
  16. [player prepareToPlay];  
  17. [player setVolume:1];  
  18. player.numberOfLoops = -1; //设置音乐播放次数  -1为一直循环   
  19. [player play]; //播放  

相关内容