Using existing system sounds in iOS App [swift|
IosSwiftAudioAvfoundationIos Problem Overview
Is it possible to use the existing Apple system sounds in my own app? I would like to write a sample app in Swift that does the following steps:
- Read/Get a list of all available systemSounds on the device (I think they are located in
/System/Library/Audio/UISounds/
) - show the list on the screen
- if I touch a list item, play these sound
So its basically the same, like when you choose a new ringtone on your iPhone.
I think some apps are using this sounds, or have they copied/bought it?
Thanks and regards Jens
Ios Solutions
Solution 1 - Ios
You can use this Swift 5 code to play system sounds:
// import this
import AVFoundation
// create a sound ID, in this case its the tweet sound.
let systemSoundID: SystemSoundID = 1016
// to play sound
AudioServicesPlaySystemSound(systemSoundID)
The most up to date list of sounds I could find are here.
And this is what they all sound like: https://www.youtube.com/watch?v=TjmkmIsUEbA
Solution 2 - Ios
Swift 4
import AVFoundation
AudioServicesPlayAlertSound(SystemSoundID(1322))
Solution 3 - Ios
Here's a quick way to test the sounds.
import AVFoundation
func displaySoundsAlert() {
let alert = UIAlertController(title: "Play Sound", message: nil, preferredStyle: UIAlertController.Style.alert)
for i in 1000...1010 {
alert.addAction(UIAlertAction(title: "\(i)", style: .default, handler: {_ in
AudioServicesPlayAlertSound(UInt32(i))
self.displaySoundsAlert()
}))
}
alert.addAction(UIAlertAction(title: "Cancel", style: .cancel, handler: nil))
self.present(alert, animated: true, completion: nil)
}