在 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。如果您连接了蓝牙设备,它会通过手表的扬声器和耳机发出声音。
我正在尝试使用 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。如果您连接了蓝牙设备,它会通过手表的扬声器和耳机发出声音。