博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

调用系统提示音教程出处:Webcool

Posted on 2012-02-07 15:25  BradyChen  阅读(1244)  评论(0编辑  收藏  举报

论坛会员zhaoxy2850分享的关于调用系统提示音的教程,写的很详细

目前做的一个项目里用到了提示音,但是又不想添加提示音到库里,便开始研究调用系统自带的提示音,最后终于找到了。

开始在CC上查发现好像很多人都在问,但没人回答,我就把自己查到的东西和写的一个demo给大家分享下吧~

首先要在工程里加入Audio Toolbox framework这个库,然后在需要调用的文件里#import <AudioToolbox/AudioToolbox.h>

最后在需要播放提示音的地方写上
AudioServicesPlaySystemSound(1106); 
注:括号中为系统声音的id,详见最下面的列表。

为了方便大家测试系统声音,我写了一个demo供大家使用下载。

另外,如果想用自己的音频文件创建系统声音来播放的同学可以参考如下代码。

//Get the filename of the sound file:
NSString *path = [NSString stringWithFormat:@"%@%@", [[NSBundle mainBundle] resourcePath], @"/jad0007a.wav"];

//declare a system sound
id SystemSoundID soundID;

//Get a URL for the sound file
NSURL *filePath = [NSURL fileURLWithPath:path isDirectory:NO];

//Use audio sevices to create the sound
AudioServicesCreateSystemSoundID((CFURLRef)filePath, &soundID);
//Use audio services to play the sound
AudioServicesPlaySystemSound(soundID);


顺便附上系统提示音对应的列表
http://iphonedevwiki.net/index.php/AudioServices

希望能对大家有帮助吧~ 

源码下载: SystemSound.zip (25 K)

 

 

AudioServices is a group of C functions in AudioToolbox for playing short (≤30 seconds) sounds.

Predefined sounds

There are some predefined system sounds, for the system sound ID in the range 1000 to 2000 (decimal), as shown below (from 2.0 to 5.0 beta). The system sounds are all stored in/System/Library/Audio/UISounds/.

Sound ID   ↓File name (iPhone)   ↓File name (iPod Touch)   ↓Category   ↓Note   ↓
1000 new-mail.caf new-mail.caf MailReceived  
1001 mail-sent.caf mail-sent.caf MailSent  
1002 Voicemail.caf Voicemail.caf VoicemailReceived  
1003 ReceivedMessage.caf ReceivedMessage.caf SMSReceived  
1004 SentMessage.caf SentMessage.caf SMSSent  
1005 alarm.caf sq_alarm.caf CalendarAlert  
1006 low_power.caf low_power.caf LowPower  
1007 sms-received1.caf sms-received1.caf SMSReceived_Alert  
1008 sms-received2.caf sms-received2.caf SMSReceived_Alert  
1009 sms-received3.caf sms-received3.caf SMSReceived_Alert  
1010 sms-received4.caf sms-received4.caf SMSReceived_Alert  
1011 - - SMSReceived_Vibrate  
1012 sms-received1.caf sms-received1.caf SMSReceived_Alert  
1013 sms-received5.caf sms-received5.caf SMSReceived_Alert  
1014 sms-received6.caf sms-received6.caf SMSReceived_Alert  
1015 Voicemail.caf Voicemail.caf - Available since 2.1
1016 tweet_sent.caf tweet_sent.caf SMSSent Available since 5.0
1020 Anticipate.caf Anticipate.caf SMSReceived_Alert Available since 4.2
1021 Bloom.caf Bloom.caf SMSReceived_Alert Available since 4.2
1022 Calypso.caf Calypso.caf SMSReceived_Alert Available since 4.2
1023 Choo_Choo.caf Choo_Choo.caf SMSReceived_Alert Available since 4.2
1024 Descent.caf Descent.caf SMSReceived_Alert Available since 4.2
1025 Fanfare.caf Fanfare.caf SMSReceived_Alert Available since 4.2
1026 Ladder.caf Ladder.caf SMSReceived_Alert Available since 4.2
1027 Minuet.caf Minuet.caf SMSReceived_Alert Available since 4.2
1028 News_Flash.caf News_Flash.caf SMSReceived_Alert Available since 4.2
1029 Noir.caf Noir.caf SMSReceived_Alert Available since 4.2
1030 Sherwood_Forest.caf Sherwood_Forest.caf SMSReceived_Alert Available since 4.2
1031 Spell.caf Spell.caf SMSReceived_Alert Available since 4.2
1032 Suspense.caf Suspense.caf SMSReceived_Alert Available since 4.2
1033 Telegraph.caf Telegraph.caf SMSReceived_Alert Available since 4.2
1034 Tiptoes.caf Tiptoes.caf SMSReceived_Alert Available since 4.2
1035 Typewriters.caf Typewriters.caf SMSReceived_Alert Available since 4.2
1036 Update.caf Update.caf SMSReceived_Alert Available since 4.2
1050 ussd.caf ussd.caf USSDAlert  
1051 SIMToolkitCallDropped.caf SIMToolkitCallDropped.caf SIMToolkitTone  
1052 SIMToolkitGeneralBeep.caf SIMToolkitGeneralBeep.caf SIMToolkitTone  
1053 SIMToolkitNegativeACK.caf SIMToolkitNegativeACK.caf SIMToolkitTone  
1054 SIMToolkitPositiveACK.caf SIMToolkitPositiveACK.caf SIMToolkitTone  
1055 SIMToolkitSMS.caf SIMToolkitSMS.caf SIMToolkitTone  
1057 Tink.caf Tink.caf PINKeyPressed  
1070 ct-busy.caf ct-busy.caf AudioToneBusy There was no category for this sound before 4.0.
1071 ct-congestion.caf ct-congestion.caf AudioToneCongestion There was no category for this sound before 4.0.
1072 ct-path-ack.caf ct-path-ack.caf AudioTonePathAcknowledge There was no category for this sound before 4.0.
1073 ct-error.caf ct-error.caf AudioToneError There was no category for this sound before 4.0.
1074 ct-call-waiting.caf ct-call-waiting.caf AudioToneCallWaiting There was no category for this sound before 4.0.
1075 ct-keytone2.caf ct-keytone2.caf AudioToneKey2 There was no category for this sound before 4.0.
1100 lock.caf sq_lock.caf ScreenLocked  
1101 unlock.caf sq_lock.caf ScreenUnlocked  
1102 - - FailedUnlock  
1103 Tink.caf sq_tock.caf KeyPressed  
1104 Tock.caf sq_tock.caf KeyPressed  
1105 Tock.caf sq_tock.caf KeyPressed  
1106 beep-beep.caf sq_beep-beep.caf ConnectedToPower  
1107 RingerChanged.caf RingerChanged.caf RingerSwitchIndication  
1108 photoShutter.caf photoShutter.caf CameraShutter  
1109 shake.caf shake.caf ShakeToShuffle Available since 3.0
1110 jbl_begin.caf jbl_begin.caf JBL_Begin Available since 3.0
1111 jbl_confirm.caf jbl_confirm.caf JBL_Confirm Available since 3.0
1112 jbl_cancel.caf jbl_cancel.caf JBL_Cancel Available since 3.0
1113 begin_record.caf begin_record.caf BeginRecording Available since 3.0
1114 end_record.caf end_record.caf EndRecording Available since 3.0
1115 jbl_ambiguous.caf jbl_ambiguous.caf JBL_Ambiguous Available since 3.0
1116 jbl_no_match.caf jbl_no_match.caf JBL_NoMatch Available since 3.0
1117 begin_video_record.caf begin_video_record.caf BeginVideoRecording Available since 3.0
1118 end_video_record.caf end_video_record.caf EndVideoRecording Available since 3.0
1150 vc~invitation-accepted.caf vc~invitation-accepted.caf VCInvitationAccepted Available since 4.0
1151 vc~ringing.caf vc~ringing.caf VCRinging Available since 4.0
1152 vc~ended.caf vc~ended.caf VCEnded Available since 4.0
1153 ct-call-waiting.caf ct-call-waiting.caf VCCallWaiting Available since 4.1
1154 vc~ringing.caf vc~ringing.caf VCCallUpgrade Available since 4.1
1200 dtmf-0.caf dtmf-0.caf TouchTone  
1201 dtmf-1.caf dtmf-1.caf TouchTone  
1202 dtmf-2.caf dtmf-2.caf TouchTone  
1203 dtmf-3.caf dtmf-3.caf TouchTone  
1204 dtmf-4.caf dtmf-4.caf TouchTone  
1205 dtmf-5.caf dtmf-5.caf TouchTone  
1206 dtmf-6.caf dtmf-6.caf TouchTone  
1207 dtmf-7.caf dtmf-7.caf TouchTone  
1208 dtmf-8.caf dtmf-8.caf TouchTone  
1209 dtmf-9.caf dtmf-9.caf TouchTone  
1210 dtmf-star.caf dtmf-star.caf TouchTone  
1211 dtmf-pound.caf dtmf-pound.caf TouchTone  
1254 long_low_short_high.caf long_low_short_high.caf Headset_StartCall  
1255 short_double_high.caf short_double_high.caf Headset_Redial  
1256 short_low_high.caf short_low_high.caf Headset_AnswerCall  
1257 short_double_low.caf short_double_low.caf Headset_EndCall  
1258 short_double_low.caf short_double_low.caf Headset_CallWaitingActions  
1259 middle_9_short_double_low.caf middle_9_short_double_low.caf Headset_TransitionEnd  
1300 Voicemail.caf Voicemail.caf SystemSoundPreview  
1301 ReceivedMessage.caf ReceivedMessage.caf SystemSoundPreview  
1302 new-mail.caf new-mail.caf SystemSoundPreview  
1303 mail-sent.caf mail-sent.caf SystemSoundPreview  
1304 alarm.caf sq_alarm.caf SystemSoundPreview  
1305 lock.caf sq_lock.caf SystemSoundPreview  
1306 Tock.caf sq_tock.caf KeyPressClickPreview The category was SystemSoundPreview before 3.2.
1307 sms-received1.caf sms-received1.caf SMSReceived_Selection  
1308 sms-received2.caf sms-received2.caf SMSReceived_Selection  
1309 sms-received3.caf sms-received3.caf SMSReceived_Selection  
1310 sms-received4.caf sms-received4.caf SMSReceived_Selection  
1311 - - SMSReceived_Vibrate  
1312 sms-received1.caf sms-received1.caf SMSReceived_Selection  
1313 sms-received5.caf sms-received5.caf SMSReceived_Selection  
1314 sms-received6.caf sms-received6.caf SMSReceived_Selection  
1315 Voicemail.caf Voicemail.caf SystemSoundPreview Available since 2.1
1320 Anticipate.caf Anticipate.caf SMSReceived_Selection Available since 4.2
1321 Bloom.caf Bloom.caf SMSReceived_Selection Available since 4.2
1322 Calypso.caf Calypso.caf SMSReceived_Selection Available since 4.2
1323 Choo_Choo.caf Choo_Choo.caf SMSReceived_Selection Available since 4.2
1324 Descent.caf Descent.caf SMSReceived_Selection Available since 4.2
1325 Fanfare.caf Fanfare.caf SMSReceived_Selection Available since 4.2
1326 Ladder.caf Ladder.caf SMSReceived_Selection Available since 4.2
1327 Minuet.caf Minuet.caf SMSReceived_Selection Available since 4.2
1328 News_Flash.caf News_Flash.caf SMSReceived_Selection Available since 4.2
1329 Noir.caf Noir.caf SMSReceived_Selection Available since 4.2
1330 Sherwood_Forest.caf Sherwood_Forest.caf SMSReceived_Selection Available since 4.2
1331 Spell.caf Spell.caf SMSReceived_Selection Available since 4.2
1332 Suspense.caf Suspense.caf SMSReceived_Selection Available since 4.2
1333 Telegraph.caf Telegraph.caf SMSReceived_Selection Available since 4.2
1334 Tiptoes.caf Tiptoes.caf SMSReceived_Selection Available since 4.2
1335 Typewriters.caf Typewriters.caf SMSReceived_Selection Available since 4.2
1336 Update.caf Update.caf SMSReceived_Selection Available since 4.2
1350 - - RingerVibeChanged  
1351 - - SilentVibeChanged  
4095 - - Vibrate There was no category for this sound before 2.2.
In the SDK this is the constant kSystemSoundID_Vibrate.