Display list of default ringtones in iOS

后端 未结 2 1378
逝去的感伤
逝去的感伤 2021-02-03 15:36

I just want to show the list of default ringtones to allow the user select one to set as ringtone for a new notification. Is that possible?

相关标签:
2条回答
  • 2021-02-03 16:33

    Use AudioServicesPlaySystemSound

    void AudioServicesPlaySystemSound (
       SystemSoundID inSystemSoundID
    );
    

    the list of systemSoundID are :

    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.
    
    0 讨论(0)
  • 2021-02-03 16:36
    #import <MediaPlayer/MediaPlayer.h>
    
    - (IBAction) AddMusicOrShowMusic: (id) sender
    {
        MPMediaPickerController *picker =
        [[MPMediaPickerController alloc] initWithMediaTypes: MPMediaTypeMusic];
        picker.delegate = self;
        picker.allowsPickingMultipleItems   = NO;
        picker.prompt                       = NSLocalizedString (@"Add songs to play", "Prompt in media item picker");
        [[UIApplication sharedApplication] setStatusBarStyle: UIStatusBarStyleDefault animated: YES];
        [self presentViewController:picker animated:YES completion:NULL];
        [picker release];
    }
    
    - (void) mediaPicker: (MPMediaPickerController *) mediaPicker didPickMediaItems: (MPMediaItemCollection *) mediaItemCollection
    {
        [self dismissViewControllerAnimated:YES completion:nil];
        item = [[mediaItemCollection items] objectAtIndex:0];
           NSURL *url = [item valueForProperty:MPMediaItemPropertyAssetURL];
        NSLog(@"url : %@",url);
    }
    - (void) mediaPickerDidCancel: (MPMediaPickerController *) mediaPicker
    {
        [self dismissViewControllerAnimated:YES completion:nil];
        [[UIApplication sharedApplication] setStatusBarStyle: UIStatusBarStyleBlackOpaque animated: YES];
    }
    
    0 讨论(0)
提交回复
热议问题