web-dev-qa-db-de.com

Vorhandene Systemtöne in der iOS-App verwenden [Swift |

Kann ich die vorhandenen Apple-System-Sounds in meiner eigenen App verwenden? Ich möchte eine Beispiel-App in Swift schreiben, die die folgenden Schritte ausführt:

  1. Lesen/Abrufen einer Liste aller verfügbaren SystemSounds auf dem Gerät (ich denke, sie befinden sich in /System/Library/Audio/UISounds/)
  2. zeigen Sie die Liste auf dem Bildschirm an
  3. wenn ich einen Listeneintrag berühre, spielen Sie diesen Ton ab

Es ist also im Grunde dasselbe, wie wenn Sie einen neuen Klingelton auf Ihrem iPhone auswählen.

Ich denke, einige Apps verwenden diese Sounds oder haben sie diese kopiert/gekauft?

Danke und Grüße Jens

23
TheOnlyXan

Mit diesem Swift 4-Code können Sie Systemsounds abspielen:

// import this
import AVFoundation

// create a sound ID, in this case its the Tweet sound.
let systemSoundID: SystemSoundID = 1016

// to play sound
AudioServicesPlaySystemSound (systemSoundID)

Die aktuellste Liste der Sounds, die ich finden konnte, ist hier .

Referenz der Dokumentation

96
Beau Nouvelle

Swift 4  

import AVFoundation

AudioServicesPlayAlertSound(SystemSoundID(1322))
8
Neha

Hier können Sie die Sounds schnell testen.

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)
}
0
Derek Soike