apple watch模拟器现在可以播放音效了吗?

Can play a sound effect on apple watch simulator now?

我想在用户按下 WKInterfaceController 上的按钮时播放声音。这是我在我的项目中所做的: - 将 AVFoundation 框架添加到我的 watchkit 应用程序。 - 在我的 WKInterfaceController 上导入 AVFoundation - 为音频会话和播放器创建 2 个变量:

var audioSession:AVAudioSession!
var player:AVAudioPlayer!

- make 2 函数用于配置音频会话和配置音频播放器:

func configureAudioSession() {
        self.audioSession = AVAudioSession.sharedInstance()

        var categoryError:NSError?
        var activeError:NSError?
//        set category cho audio session
        self.audioSession.setCategory(AVAudioSessionCategoryPlayback, error: &categoryError)

        println("error: \(categoryError)")
//        set active cho audio session

        var success = self.audioSession.setActive(true, error: &activeError)

        if !success {
            println("error making audio session active :\(activeError)")
        }
    }


func configureAudioPlayer() {
//       Lay song path
        var songPath = NSBundle.mainBundle().pathForResource("Open Source - Sending My Signal", ofType: "mp3")
//        Chuyen thanh URL
        println("songpath: \(songPath)")
        var songURL = NSURL(fileURLWithPath: songPath!)

        println("songURL: \(songURL)")

//
        var songError:NSError?

//        Tao audioplayer

        self.player = AVAudioPlayer(contentsOfURL: songURL!, error: &songError)

        println("songerror:\(songError)")

        self.player.numberOfLoops = 0

    }

@IBAction func startGameButtonPressed() {

self.configureAudioSession()
self.configureAudioPlayer()
self.player.play()

}

一切正常,我可以看到 southPath,虽然我的按钮可以工作,但我听不到声音。我仍然在 IOS 应用程序上使用这些步骤,它工作正常。可能此时我们不能在Watchkit上播放音效?如果可以,请帮我做一下。

No. It is not possible to play sounds with WatchKit on the Apple Watch.
- Apple's WatchKit Evangelist

目前无法使用最新版本的 WatchKit 播放声音。

我建议提交功能请求。

可以在apple watch中播放声音文件application.You需要在apple watch应用程序扩展中单独添加声音文件并调用AVAudioPlayer来播放声音文件。

例如:

let path = NSBundle.mainBundle().pathForResource("coinFlip", ofType:"caf")
let fileURL = NSURL(fileURLWithPath: path!)
player = AVAudioPlayer(contentsOfURL: fileURL, error: nil)
player.prepareToPlay()
player.delegate = self
player.play()