【发布时间】:2013-05-28 04:15:28
【问题描述】:
目前我正在制作一个 Phonegap 应用程序。 我想将增强现实与语音输入结合起来。 Phonegap 有一个名为 SpeechRecognizer 的插件,但我无法让它工作。
我的标题:
<script type="text/javascript" src="cordova-2.6.0.js"></script>
<script type="text/javascript" src="SpeechRecognizer.js"></script>
<script type="text/javascript" charset="utf-8">
document.addEventListener("deviceready", onDeviceReady, false);
function speechOk() {
alert('speech works');
}
function speechFail() {
alert("speech doesn't work");
}
function onDeviceReady() {
window.plugins.speechrecognizer.init(speechOk, speechFail);
}
$("#micButton").bind("touchstart", function() {
var requestCode = 4815162342;
var maxMatches = 1;
var promptString = "What do you want?";
window.plugins.speechrecognizer.startRecognize(speechOk, speechFail, requestCode, maxMatches, promptString);
});
</script>
项目图片(config.xml):
提前致谢
【问题讨论】:
-
我按照 github repo 上的 readme.md 让它工作得很好。你确定所有的拼写都正确吗?最初我遇到了麻烦,因为我将其输入错误为 speechRecgonizer。另外...您的设备上有语音识别器应用程序吗?它在 Nexus7 上对我有用,但在没有语音识别器应用程序的旧设备上,它失败了。如果你在
onDeviceReady()中执行console.log(window.plugins.speechrecognizer)会发生什么?最后,你的日志说了什么? -
这很奇怪。我无法让它工作。我的控制台日志:“Uncaught TypeError: Cannot read property 'speechrecognizer' of undefined” 你的意思是什么:你的设备上有语音识别器应用程序吗?我有一个 Sony Xperia Z (android 4.1.2) 所以这不会是问题吧?
-
我已在 android manifest 中将 min sdk 版本更改为 15,现在我不再收到任何控制台错误,但现在它根本没有记录任何内容。
标签: javascript android cordova speech-recognition