下記コードで、音声ファイル(chime.mp3)の音を出そうとしていますが、シミュレータではちゃんと音が出ますが、実機では何も音が出ません。実機のサイレントスイッチはOFFになっています。また、実機、シミュレータいずれの場合も "Reading audio file successful." メッセージが出ています。
試しに、下記コード func systemSound(_ sender: Any)で、システムサウンド(Sound ID: 1000)を鳴らしてみたところ、実機、シミュレータとも正しく音が出ます。
swift
1import UIKit 2import AVFoundation 3 4class ViewController: UIViewController { 5 6 var audioPlayer:AVAudioPlayer! 7 8 override func viewDidLoad() { 9 super.viewDidLoad() 10 11 let audioPath = Bundle.main.path(forResource: "chime", ofType:"mp3")! 12 let audioUrl = URL(fileURLWithPath: audioPath) 13 14 do { 15 audioPlayer = try AVAudioPlayer(contentsOf: audioUrl) 16 print("Reading audio file successful.") 17 } catch { 18 audioPlayer = nil 19 print("Reading audio file failed.") 20 } 21 } 22 23 @IBAction func customSound(_ sender: Any) { 24 print("customSound button tapped") 25 audioPlayer.play() 26 } 27 28 @IBAction func systemSound(_ sender: Any) { 29 print("systemSound button tapped") 30 let soundIdRing:SystemSoundID = 1000 31 AudioServicesPlaySystemSound(soundIdRing) 32 } 33 34 override func didReceiveMemoryWarning() { 35 super.didReceiveMemoryWarning() 36 } 37 38}
動作環境:
iOS 13.5
Swift5 (4.2も試してみました)
Xcode 11.5
実機 iPhone7 (iOS 13.5.1)
何が原因として考えられるでしょうか? アドバイスいただけると助かります。よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/20 14:36