Воспроизвести звук на WatchOS
Я пытаюсь сделать приложение для Apple Watch, используя Xcode. Это очень простое приложение, которое воспроизводит звук при нажатии кнопки, но я не могу найти способ играть.
Аудио файл находится в моем расширении 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")
}
}
Звук не воспроизводится, но я знаю, что он попадает в правый корпус переключателя, потому что он печатает "звук".
1 ответ
Решение
То, что работало для меня, было использовать AVFoundation с AVAudioPlayer для звука вместо WKAudioFilePlayer, который я использовал. Он звучит через динамик часов, а также через наушники, если у вас подключен комплект Bluetooth.