2016-11-24 54 views

回答

2

更好的问题问自己,是否有一个cordova插件为我想要的东西?

是的,有cordova插件可用。

https://github.com/macdonst/SpeechRecognitionPlugin https://github.com/poiuytrez/SpeechRecognizer

只是而是采用cordova plugin add .....使用ionic plugin add ......(将立即更新平台)的。

+0

谢谢,我也遇到过这个。但是在我安装插件后,你如何在你的ts/js中引用它? 从'plugins/cordova-plugin-speechrecognizer'导入{SpeechRecognition};例如 ,然后SpeechRecognition.speechrecognizer.startRecognize例如给出了“Uncaught Error:Can not find module”plugins/cordova-plugin-speechrecognition“ – Kniggos

+0

depends,'SpeechRecognizer'可以立即使用,就像'SpeechRecognizer.startRecognize(success,error,maxMatches ,promptString,language);'(参见他们的文档)和'SpeechRecognitionPlugin'我相信可以通过'new SpeechRecognition();' – Ivaro18

+0

ok,所以让我们留在poiuytrez/SpeechRecognizer插件中,只需调用“SpeechRecognizer.startRecognize成功,错误,maxMatches,promptString,语言);“does not work,it gives”Typescript Error 找不到名字'SpeechRecognizer'。“我几乎想象不到你不需要导入...... – Kniggos

0

您可以使用此插件科尔多瓦语音识别cordova-plugin-tts 由于离子2使用打字稿,所有你需要的是使用具有打字稿.The Github上回购该插件的方式包括如何做一个例子

declare module TTS { 
    interface IOptions { 
     /** text to speak */ 
     text: string; 
     /** a string like 'en-US', 'zh-CN', etc */ 
     locale?: string; 
     /** speed rate, 0 ~ 1 */ 
     rate?: number; 
    } 

    function speak(options: IOptions, onfulfilled:() => void, onrejected: (reason) => void): void; 
    function speak(text: string, onfulfilled:() => void, onrejected: (reason) => void): void; 
}