首先要在工程里加入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);
提示音列表:
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 |
|
|