android - Web Speech api 不适用于 android chrome

标签 android google-chrome speech-recognition webspeech-api

Web 语音 api (webkitSpeechRecognition) 在 Android 手机上返回“不允许”错误。

(我在 Android 设置上授予了麦克风访问 Chrome 应用和网站的权限)

桌面版 Chrome 正在运行。 但是,在 android 上不是。

(测试手机为 Samsung Galaxy S9,Android 版本 10,Chrome 版本 86)

我在 Android 上测试了 MicrosoftEdge、SamsungInternet 和 Chrome。 但都返回“不允许”错误

测试页 https://www.google.com/intl/en/chrome/demos/speech.html

chrome 远程设备控制台上的测试代码。

const a = new webkitSpeechRecognition()
a.onerror = (err) => {console.log("err:", err)}
a.start()
=> VM187:1 err: SpeechRecognitionErrorEvent {isTrusted: true, error: "not-allowed", message: "", type: "error", target: SpeechRecognition, …}

是安卓的问题吗? 我怎样才能让它发挥作用?

最佳答案

我知道这是一个非常古老的问题。

在我的案例中,问题是由无效的 SSL 证书引起的。 Desktop Chrome (Linux) 对此没有问题,但 Android Chrome 抛出了“不允许”的错误。修复 SSL 证书解决了问题。

关于android - Web Speech api 不适用于 android chrome,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64402850/

相关文章:

android - 在布局中以等间距排列元素

java - android - 对于在许多 Activity 中重复的一些java代码使用什么方法

javascript - Javascript 中 DOM 元素的跨浏览器导航

c# - 带通配符的 SpeechRecognitionEngine 语法

ios - 有没有办法以编程方式发送消息,而无需用户点击屏幕确认发送消息,而只是使用语音命令?

java - 如何在java中使用sphinx和freetts管理hello.gram以进行对话

android - Activity 中间区域的谷歌地图

android - 获取 ListView 项的可见位置

google-chrome - 持久保存 chrome devtools 设置

javascript - 对我来说,出乎意料的是,Robot Framework 中的 javascript 返回值。为什么?