Apple Watch 语音转文本功能不起作用
Posted
技术标签:
【中文标题】Apple Watch 语音转文本功能不起作用【英文标题】:AppleWatch Speech-to-Text functionality not working 【发布时间】:2015-07-01 23:35:25 【问题描述】:我正在尝试为 watchkit 应用程序实现语音到文本功能。 我提到了this 有示例代码的问题。
以下是我试过的代码:
self.presentTextInputControllerWithSuggestions(["Start it", "Stop it"], allowedInputMode: .Plain, completion: (selectedAnswers) -> Void in
if selectedAnswers.count > 0
if let spokenReply = selectedAnswers[0] as? String
self.label.setText("\(spokenReply)")
)
label
是显示我所说的文本的标签。
当我运行它时,它会显示你应该说话的屏幕(Siri 类型的屏幕),顶部有两个选项:“取消”和“完成”。一旦我说完,我点击“完成”,但屏幕不会消失或显示初始屏幕,我总是必须点击“取消”才能返回,而且我没有得到任何形式的语音数据文本。我检查了一下,似乎selectedAnswers
总是一个空数组,除非我点击“开始”/“停止”选项。
谁能帮我解决这个问题?我想在label
上显示语音消息。我在 InterfaceController.swift 文件中的 awakeWithContext
方法中有代码,我应该把它放在其他地方吗?
我在 AppleWatch 上使用装有 ios 9 beta 2 和 watchOS 2 beta 的 iPhone。
谢谢!
【问题讨论】:
【参考方案1】:您可以要求用户输入并给他建议(参见下面的 Swift 示例)。
self.presentTextInputControllerWithSuggestions(["suggestion 1", "suggestion 2"] allowedInputMode: .Plain, completion: (answers) -> Void in
if answers && answers.count > 0
if let answer = answers[0] as? String
println("\answer")
)
如果建议为零,则直接进入听写。它在模拟器上不起作用,但在真实手表上。
您的方法是正确的,但您的 SIRI 有问题,请尝试更改语言。
它应该像这样工作。
【讨论】:
那么您的代码中的reply
是什么?你如何得到它,它应该在哪里定义? (我认为应该是answers
而不是reply
)
我的 iPhone 上的 Siri 出现了一些问题,因为它没有将语音转换为文本,现在它可以正常工作了,谢谢!
happy.to hear.that.!!享受编码:)以上是关于Apple Watch 语音转文本功能不起作用的主要内容,如果未能解决你的问题,请参考以下文章
Scaled Metric 在 Apple Watch 上不起作用?
iPhone应用程序处于终止状态时Apple Watch应用程序不起作用?
我的Pyttsx3模块没有说什么,但文本到语音功能不起作用,没有获得任何音频输出