在 WatchOS 上播放声音

Play sound on WatchOS

我正在尝试使用 Xcode 为 Apple Watch 制作应用程序。这是一个非常简单的应用程序,只要按下按钮就会播放声音,但我似乎找不到播放方式。

音频文件在我的 WatchKit 扩展中,我试图通过 WKAudioFilePlayer 对象播放它,但我不知道我是否以正确的方式播放它。

 override func awake(withContext context: Any?) {
    super.awake(withContext: context)
    kickPath = Bundle.main.path(forResource:"Kick", ofType: "mp3")!
    kickUrl = URL(fileURLWithPath: kickPath!)
    kickAsset = WKAudioFileAsset(url: kickUrl!)
    kickItem = WKAudioFilePlayerItem(asset: kickAsset!)
    kick = WKAudioFilePlayer(playerItem: kickItem!)
}

@IBAction func kickButton() {
    switch kick.status {
    case .readyToPlay:
        kick.play()
        print("sound")
    case .failed:
        print("failed")
    case .unknown:
        print("unknown")
    }
}

音频不播放,但我知道它在正确的开关盒上,因为它打印 "sound"。

对我有用的是将 AVFoundation 与 AVAudioPlayer 一起用于声音,而不是我使用的 WKAudioFilePlayer。如果您连接了蓝牙设备,它会通过手表的扬声器和耳机发出声音。