声音在模拟器中播放但不在物理设备上播放

sound is playing in simulator but not on physical device

我的 xcode 声音没有在 ipad 上播放,而是在 xcode 模拟器上播放。我从应用商店下载了我的应用,但声音也不存在。我尝试了多种文件格式,包括 mp3、aac、wav 等,其中 none 正在播放。我不知道发生了什么,因为我以前使用过这段代码并且它运行良好。

import UIKit;import AVFoundation

class ViewController: UIViewController {

    var player : AVAudioPlayer?
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        let path = Bundle.main.path(forResource: "bell.mp3", ofType:nil)!
        let url = URL(fileURLWithPath: path)

        do {
            print("ran")
            player = try AVAudioPlayer(contentsOf: url)
            player?.play()
        } catch {
            // couldn't load file :(
        }
    }


}

仔细检查您发布的代码是否落入捕获块。如果产生错误,您应该会在控制台中看到错误。

do {
    print("ran")
    player = try AVAudioPlayer(contentsOf: url)
    player?.play()
} catch let error {
    print(error.localizedDescription)
}

您还应该检查设备是否处于静音状态。为防止出现这种情况,您可以使用以下始终播放音频的方法,因为音频会话类别将设置为 .playback

do {
    try AVAudioSession.sharedInstance().setCategory(.playback)
} catch let error {
    print(error.localizedDescription)
}