IOS后台播放音乐

Posted ios4

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS后台播放音乐相关的知识,希望对你有一定的参考价值。

IOS后台播放音乐

博客分类:
 

http://www.apple.com.cn/developer/iphone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/AudioandVideoTechnologies/AudioandVideoTechnologies.html#//apple_ref/doc/uid/TP40007072-CH19-SW32

 

 

1.首先在工程中导入播放音乐所使用的框架:AV Foundation框架

2.在项目中添加代码:

   导入框架头文件:

Java代码  技术分享
  1. #import <AVFoundation/AVFoundation.h>  

 

 

   定义播放器变量:

Java代码  技术分享
  1. AVAudioPlayer *player;  
  2. @property (strong, nonatomic) AVAudioPlayer *player;  

 

 

    自定义播放方法:

Java代码  技术分享
  1. -(void)playSound{  
  2.     [[AVAudiosession sharedInstance] setCategory: AVAudioSessionCategoryPlayback error: nil];  
  3.     [[AVAudioSession sharedInstance] setActive: YES error: nil];  
  4.       
  5.     NSString *soundFilePath =  
  6.     [[NSBundle mainBundle] pathForResource: @"sound" ofType: @"mp3"];  
  7.       
  8.     NSURL *fileURL = [[NSURL alloc] initFileURLWithPath: soundFilePath];  
  9.       
  10.     self.player = [[AVAudioPlayer alloc] initWithContentsOfURL: fileURL error: nil];  
  11.     [fileURL release];  
  12.       
  13.     [player play];  
  14.     [player setDelegate: self];  
  15. }  

 

 

按Home键暂停播放(AppDelegate.m):

Java代码  技术分享
  1. - (void)applicationDidEnterBackground:(UIApplication *)application  
  2. {  
  3.     if (self.player.playing) {  
  4.         [self.player pause];  
  5.     }  
  6. }  

 

 

 运行软件继续播放(AppDelegate.m):

Java代码  技术分享
  1. - (void)applicationWillEnterForeground:(UIApplication *)application  
  2. {  
  3.     if(self.player.playing == NO){  
  4.         [self.player play];  
  5.     }  
  6. }  
Java代码  技术分享
  1. 模拟器可以测试!  

以上是关于IOS后台播放音乐的主要内容,如果未能解决你的问题,请参考以下文章

IOS后台运行 之 后台播放音乐

iOS音乐后台播放锁屏封面及播放控制

iOS音乐后台播放锁屏封面及播放控制

iOS 实现后台 播放音乐声音 AVAudioPlayer

iOS- 关于AVAudioSession的使用——后台播放音乐

iOS:在特定时间在后台播放/停止音乐