Das Abspielen eines Sounds ist im Code so ausführlich und würde nach Möglichkeit eine Erweiterung von AVAudioSession erstellen. Die Art, wie ich es mache, ist das Zuweisen eines Objekts zu einer Variablen, aber ich benötige Hilfe/Ratschläge, wie diese Funktion eingerichtet wird, damit sie wiederverwendet und optimiert wird.Wiederverwendbare Erweiterung zum Abspielen von Sound ohne Speicherverlust in iOS und Swift?
Hier ist, was ich habe:
func playSound(name: String, extension: String = "mp3") {
let sound = NSBundle.mainBundle().URLForResource(name, withExtension: extension)
do {
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
try AVAudioSession.sharedInstance().setActive(true)
UIApplication.sharedApplication().beginReceivingRemoteControlEvents()
audioPlayer = try AVAudioPlayer(contentsOfURL: sound!)
audioPlayer?.prepareToPlay()
audioPlayer?.play()
} catch { }
}
Ich glaube, ich habe die audioPlayer
Variable außerhalb dieser Funktion zu schaffen, sonst hatte ich eine harte Zeit, etwas zu spielen. Vielleicht kann es in sich abgeschlossen sein? Ich hoffe, dass es so etwas zu verwenden:
AVAudioSession.sharedInstance().play("bebop")