web-dev-qa-db-fra.com

Utilisation de sons système existants dans une application iOS [Swift |

Est-il possible d'utiliser les sons du système Apple existant dans ma propre application? Je voudrais écrire un exemple d'application dans Swift qui effectue les étapes suivantes:

  1. Lire/obtenir une liste de tous les systemSounds disponibles sur le périphérique (je pense qu'ils se trouvent dans /System/Library/Audio/UISounds/)
  2. afficher la liste à l'écran
  3. si je touche un élément de la liste, joue ces sons

C'est donc fondamentalement la même chose, comme lorsque vous choisissez une nouvelle sonnerie sur votre iPhone.

Je pense que certaines applications utilisent ces sons ou l'ont-elles copiée/achetée?

Merci et salutations Jens

23
TheOnlyXan

Vous pouvez utiliser ce code Swift 4 pour jouer les sons du système:

// import this
import AVFoundation

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

// to play sound
AudioServicesPlaySystemSound (systemSoundID)

La liste la plus récente des sons que j'ai pu trouver est ici .

Référence de la documentation

96
Beau Nouvelle

Swift 4  

import AVFoundation

AudioServicesPlayAlertSound(SystemSoundID(1322))
8
Neha

Voici un moyen rapide de tester les sons.

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