#import <UIKit/UIKit.h> #import <AudioToolbox/AudioToolbox.h> [@interface](http://my.oschina.net/u/996807) MsgPlaySound : NSObject { SystemSoundID sound;//系统声音的id 取值范围为:1000-2000 } - (id)initSystemShake;//系统 震动 - (id)initSystemSoundWithName:(NSString *)soundName SoundType:(NSString *)soundType;//初始化系统声音 - (void)play;//播放 [@end](http://my.oschina.net/u/567204) #import "MsgPlaySound.h" @implementation MsgPlaySound - (id)initSystemShake { self = [super init]; if (self) { sound = kSystemSoundID_Vibrate;//震动 } return self; } - (id)initSystemSoundWithName:(NSString *)soundName SoundType:(NSString *)soundType { self = [super init]; if (self) { NSString *path = [NSString stringWithFormat:@"/System/Library/Audio/UISounds/%@.%@",soundName,soundType]; //[[NSBundle bundleWithIdentifier:@"com.apple.UIKit" ]pathForResource:soundName ofType:soundType];//获得苹果框架资源UIKit.framework ,从中取出所要播放的系统声音的路径 //[[NSBundle mainBundle] URLForResource: @"tap" withExtension: @"aif"]; 获取自定义的声音 if (path) { OSStatus error = AudioServicesCreateSystemSoundID((CFURLRef)[NSURL fileURLWithPath:path],&sound); if (error != kAudioServicesNoError) {//获取的声音的时候,出现错误 sound = nil; } } } return self; } - (void)play { AudioServicesPlaySystemSound(sound); }