ちょっとしたときに、
あらかじめ用意されているシステム音を使いたい。
AudioServicesPlaySystemSound(1000)
👉 AudioServicesPlaySystemSound(_:) | Apple Developer Documentation
これだけで音が鳴る。
「1000」 は SystemSoundID というもののようなので、
「どんな音が鳴るのかリスト」を探すが、
公式で見つけられなかった。
以下にそれらしきもの。
👉 AudioServices - iPhone Development Wiki
結構、古そうなので今どきの状態を確認したい。
OSやバージョンなど環境によっても違うっぽい。
なので、コードからのぞいてみる。
🔊 欠番ID
ID は 2000 ぐらいまでの整数なのですが、
非公式のリストを見る限り、番号が歯抜け状態。
音声データの長さで「欠番らしき」を見分ける。
実際に再生してその時間を取得しました。
let start = Date()
AudioServicesPlaySystemSoundWithCompletion(1000) {
let elapsed = Date().timeIntervalSince(start)
print(elapsed)
}
// 1.566209077835083
👉 AudioServicesPlaySystemSoundWithCompletion(_:_:) | Apple Developer Documentation
おおまかに 再生時間 50ミリ秒 以下が欠番っぽい。
🔊 グリッドでボタン
ボタンを並べて Preview や Simulator や 実機 でどんな音があるのか確かめます 。
極力、deprecated な関数は避けていきたいです。
🔊 まとめ
実際に音声ファイルを作成する前に、雰囲気を確認したいときに使いたくなります。
しかし、ID が分からない。
そんな人用。
ファイルで探すなら、各環境内でディレクトリ名で走査するといいのですね !
Library/Audio/UISounds
❯ tree .
.
├── 3rd_party_critical.caf
├── AuthenticationMatch_Full.caf
├── AuthenticationMatch_Short.caf
...
├── ussd.caf
├── warsaw.caf
└── wheels_of_time.caf
4 directories, 321 files
あと、アプリとかショートカットもありました。
👉 「Play System Sounds」をApp Storeで
👉 System Sounds - Shortcuts