我正在使用此代码在Apple Watch上显示AudioRecorder(摘自https://www.raywenderlich.com/345-audio-recording-in-watchos-tutorial)
let outputURL = chatMasterController.newOutputURL()
let preset = WKAudioRecorderPreset.narrowBandSpeech
let options: [String : Any] =
[WKAudioRecorderControllerOptionsMaximumDurationKey: 30]
presentAudioRecorderController(
withOutputURL: outputURL,
preset: preset,
options: options) {
[weak self] (didSave: Bool, error: Error?) in
guard didSave else { return }
print("finished audio to \(chatID) at \(outputURL)")
print(outputURL)
}
记录器弹出,但是似乎没有任何输入。说话时波形不会上升,然后尝试播放录音,无论录音多长时间,我都保持0.2秒的静音时间。
我尝试了另一个使用麦克风的应用程序,并且该应用程序确实要求我许可录制音频。我担心之前会撤消许可,所以我重新安装了我的应用程序,但该应用程序却没有任何变化-无需询问权限,也不会生成输入。
是否有我想念的东西,例如导入库?
答案 0 :(得分:1)
我现在已经弄清楚了。您不仅需要在Watch应用程序的plist中使用Privacy - Microphone Usage Description
字符串,还需要在iPhone的plist中进行设置。
仅在Watch上设置它无济于事,仅在iPhone上设置它不允许您直接在Watch上使用。因此,您都需要它。
不知道为什么没有在任何地方对此进行记录,但是它符合苹果公司的“我们正在下坡”运动:)