繁体   English   中英

Mobile Safari 中的 Javascript 中的麦克风访问

[英]Microphone access in Javascript in Mobile Safari

我正在尝试在网页中使用 Javascript 实现对麦克风的访问,

使用navigator.getUserMedia({audio: true})navigator.mediaDevices.getUserMedia({audio:true})

(并实施对供应商前缀的检查:

navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia; )

响应页面上按钮的点击事件而调用

在 IOS Safari 中似乎不起作用。 (在桌面 Chrome 中工作正常)。

然而,这里的这些人似乎让它工作了 - 它在我的 iPhone 上的 Safari 上工作。

他们在做什么不同?

在此处输入图像描述,我们可以在输入文本框中输入麦克风键盘,并在用户停止询问时以编程方式触发某些功能

 var prevTextboxWords = ""; var textboxWords = ""; var textRepeatTimes = 0; var prevTextCheck = ""; var textCheck = ""; var textCheckNumber = 0; var x = 0; var speechTimeOutLimit = 16; var iOS = !!navigator.platform && /iPad|iPhone|iPod/.test(navigator.platform); if (iOS) { iosVoice(); function iosVoice() { setTimeout(function() { textCheck = $("#record").val(); var numberOfWordsSpoken = textCheck.split(" ").length; if (numberOfWordsSpoken < 3) speechTimeOutLimit = 16; else if (numberOfWordsSpoken < 6) speechTimeOutLimit = 12; else speechTimeOutLimit = 7; if (textCheck != "" && textCheck == prevTextCheck) { textCheckNumber++ } else { textCheckNumber = 0 } if (textCheck.length < 4) textCheckNumber = 0; if (textCheckNumber > speechTimeOutLimit) { textCheckNumber = 0; $("#record").val(""); prevTextCheck = ""; textCheck = textCheck.toLowerCase(); console.log(textCheck + "HIT"); //some function with text textCheck textCheck = "" } prevTextCheck = textCheck; coroverIosVoice() }, 200) } }
 <input type="text" id="record">

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM