SpeechRecognition 不适用于 Android/Mobile Chrome 但适用于桌面?

SpeechRecognition does not work on Android/Mobile Chrome but does on Desktop?

根据 https://developer.mozilla.org/en-US/docs/Web/API/Web_Speech_API,Web 语音 API 应该可以在 Chrome 上为 Android 工作,但它不会。在桌面上,它工作正常,并在收听之前请求使用麦克风的权限。是否需要配置 chrome android 设置才能使用此技术?在 Android,它甚至不请求许可,它只是立即拒绝对位置和麦克风的许可。

我的应用程序示例位于:a7-bolt170.herokuapp.com/during_run

编辑:找错地方了,我给用户 URL 没有 https:// 前缀,所以 Chrome 拒绝授予硬件权限。添加 https:// 前缀解决了这个问题。

我对 Android 一无所知但是...

通过查看它在 Chromium 下的桌面上是如何完成的,它将为您提供有关如何在 Android 上完成它的线索:

要在 Chromium 中设置此类权限,我们这样做...

chrome.contentSettings.microphone.set({primaryPattern:'<all_urls>',setting:'ask'});  // allow|block|ask

在允许上述内容后,我们必须像这个例子一样为多媒体设置带有“允许”参数的 iframe...

YourFrame.setAttribute('allow','microphone; camera;');

我希望这对您有所帮助,因为 Android 不能相差太大!

Chrome 不使用 https:// 时锁定权限,请始终使用 https://,孩子们。