[iPhone] System Sound の再生

iPhone がシステムで持っている音源やバイブレータなどを再生させてみましょう。音楽再生とくれば AVFoundation の AVAudioPlayerですがAudioToolbox のフレームワークにある
AudioServicesPlaySystemSoundを使うと簡単にできます。

簡単に再生する例を作ってみます

syssound0
 

Swift 4.0
Xcode 9.0

 

System Sound Services

 
最初に AudioToolbox.framework をプロジェクトにインポートします。
「Build Phases」「Link Binary With Libraries」に「+」で追加
 
screen-shot-2016-09-28-at-12-03-29
 

SystemSoundID

 
IDを指定するだけでとても簡単です。IDはiPhoneでも多数選択できるように色々あります。
 

 

ファイルパスを指定して再生

 
端末内のシステムサウンドを直接指定して再生します。この場合ボリュームやミュートの影響を受けます。
 

 

独自音源ファイルパスを再生

 
サンプルとして mp3などをプロジェクトに追加します。30秒以下などの幾つかの制限があったりします。
mp3ファイルをプロジェクト内にaddしておきます。
System Sound Services
 

 

バイブレータを再生

 
これだけ別処理で直接できます。
 

 

まとめてみると

ViewController.swift

 

これらのテストの確認は以下の環境設定で実施しましたが、vibraterは当然マナーモードでないと動作しません。またAirPodsはマナーモードでは音楽は聞けますが、これらシステム音は聞こえてきません。

simulator iPhone iPhone(マナーモード) AirPods AirPods
(マナーモード)
SystemSound OK OK OK
photoShutter.caf OK
new-mail.caf OK
sample mp3 OK OK
vibrater OK  OK

 

 
Ref: System Sound Services Reference

スマホの下取り

まだ1年も使っていないスマホを新機種に変えたくて下取りしようとお店に持ち込んだことがありますが
結局なんだかんだと思ったほどの金額になりませんでした(涙

このネットオフは専業のため高額買取が可能で、お店に行く時間が無い人にとっては送料無料の宅配便が自宅まで引取りに来てくれるのは助かります。

定額買取キャンペーン中であればキズがあっても付属品が無くても減額無しなのでお得です。」


 

 

誤字脱字、意味不明などのご意見は 謙: e-mail まで
ブックマークしておくと便利です このエントリーをはてなブックマークに追加
Twitter:




Apple Watch Series 4
44mm
(GPS)/(GPS+Cellular)
スペースグレイアルミニウムケース
ブラックスポーツバンド




ページのトップへ戻る

シェアする

  • このエントリーをはてなブックマークに追加

フォローする