在iPhone播发背景音乐和按键生效的代码

在iPhone播放背景音乐和按键生效的代码
作者 lhp7424521 , 原帖 http://www.cocoachina.com/bbs/read.php?tid-19166.html

1、背景音乐播放    支持mp3格式 循环播放长音乐


这种播放音乐的方式导入框架#import <AVFoundation/AVFoundation.h>;

NSString *musicFilePath = [[NSBundle mainBundle] pathForResource:@"changan" ofType:@"mp3"];       //创建音乐文件路径
  NSURL *musicURL = [[NSURL alloc] initFileURLWithPath:musicFilePath];  

   AVAudioPlayer *thePlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:musicURL error:nil];

// 创建播放器
  self.myBackMusic = thePlayer;    //赋值给自己定义的类变量
  
  [musicURL release];
  [thePlayer release];
  
  [myBackMusic prepareToPlay];
  [myBackMusic setVolume:1];   //设置音量大小
  myBackMusic.numberOfLoops = -1;//设置音乐播放次数  -1为一直循环
  if (mainMusicStatus)
  {
   [myBackMusic play];   //播放
  }


  2、按钮播放声音
需要导入框架#import <AudioToolbox/AudioToolbox.h>  

NSString *thesoundFilePath = [[NSBundle mainBundle] pathForResource:@"Clapping Crowd Studio 01" ofType:@"caf"];    //创建音乐文件路径
CFURLRef thesoundURL = (CFURLRef) [NSURL fileURLWithPath:thesoundFilePath];
AudioServicesCreateSystemSoundID(thesoundURL, &sameViewSoundID);

//变量SoundID与URL对应

AudioServicesPlaySystemSound(sameViewSoundID);  // 播放SoundID声音