这是
实验性技术
检查
浏览器兼容性表格
要小心谨慎在生产中使用这之前。
SpeechGrammarList
接口在
Web 语音 API
represents a list of
SpeechGrammar
objects containing words or patterns of words that we want the recognition service to recognize.
Grammar is defined using JSpeech Grammar Format ( JSGF .) Other formats may also be supported in the future.
SpeechGrammarList.SpeechGrammarList()
SpeechGrammarList
对象。
SpeechGrammarList.length
只读
SpeechGrammar
objects contained in the
SpeechGrammarList
.
SpeechGrammarList.item()
SpeechGrammar
objects to be retrieved from the
SpeechGrammarList
using array syntax.
SpeechGrammarList.addFromURI()
SpeechGrammarList
as a new
SpeechGrammar
对象。
SpeechGrammarList.addFromString()
DOMString
within the code base (e.g. stored in a variable) and adds it to the
SpeechGrammarList
as a new
SpeechGrammar
对象。
In our simple
Speech color changer
example, we create a new
SpeechRecognition
object instance using the
SpeechRecognition()
constructor, create a new
SpeechGrammarList
, add our grammar string to it using the
SpeechGrammarList.addFromString
method, and set it to be the grammar that will be recognised by the
SpeechRecognition
instance using the
SpeechRecognition.grammars
特性。
var grammar = '#JSGF V1.0; grammar colors; public <color> = aqua | azure | beige | bisque | black | blue | brown | chocolate | coral | crimson | cyan | fuchsia | ghostwhite | gold | goldenrod | gray | green | indigo | ivory | khaki | lavender | lime | linen | magenta | maroon | moccasin | navy | olive | orange | orchid | peru | pink | plum | purple | red | salmon | sienna | silver | snow | tan | teal | thistle | tomato | turquoise | violet | white | yellow ;' var recognition = new SpeechRecognition(); var speechRecognitionList = new SpeechGrammarList(); speechRecognitionList.addFromString(grammar, 1); recognition.grammars = speechRecognitionList;
| 规范 | 状态 | 注释 |
|---|---|---|
|
Web 语音 API
The definition of 'SpeechGrammarList()' in that specification. |
草案 |
| 桌面 | 移动 | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
SpeechGrammarList
|
Chrome
33
Prefixed
|
Edge
≤79
Prefixed
|
Firefox No | IE No | Opera No | Safari No |
WebView Android
Yes
Prefixed
|
Chrome Android
Yes
Prefixed
|
Firefox Android No | Opera Android No | Safari iOS No |
Samsung Internet Android
Yes
Prefixed
|
SpeechGrammarList()
构造函数
|
Chrome
33
Prefixed
|
Edge
≤79
Prefixed
|
Firefox No | IE No | Opera No | Safari No |
WebView Android
Yes
Prefixed
|
Chrome Android
Yes
|
Firefox Android No | Opera Android No | Safari iOS No |
Samsung Internet Android
Yes
|
addFromString
|
Chrome
33
Prefixed
|
Edge
≤79
Prefixed
|
Firefox No | IE No | Opera No | Safari No |
WebView Android
Yes
Prefixed
|
Chrome Android
Yes
Prefixed
|
Firefox Android No | Opera Android No | Safari iOS No |
Samsung Internet Android
Yes
Prefixed
|
addFromURI
|
Chrome
33
Prefixed
|
Edge
≤79
Prefixed
|
Firefox No | IE No | Opera No | Safari No |
WebView Android
Yes
Prefixed
|
Chrome Android
Yes
Prefixed
|
Firefox Android No | Opera Android No | Safari iOS No |
Samsung Internet Android
Yes
Prefixed
|
item
|
Chrome
33
Prefixed
|
Edge
≤79
Prefixed
|
Firefox No | IE No | Opera No | Safari No |
WebView Android
Yes
Prefixed
|
Chrome Android
Yes
Prefixed
|
Firefox Android No | Opera Android No | Safari iOS No |
Samsung Internet Android
Yes
Prefixed
|
length
|
Chrome
33
Prefixed
|
Edge
≤79
Prefixed
|
Firefox No | IE No | Opera No | Safari No |
WebView Android
Yes
Prefixed
|
Chrome Android
Yes
Prefixed
|
Firefox Android No | Opera Android No | Safari iOS No |
Samsung Internet Android
Yes
Prefixed
|
完整支持
不支持
实验。期望将来行为有所改变。
见实现注意事项。
要求使用供应商前缀或不同名称。
To use speech recognition in an app, you need to specify the following permissions in your manifest :
"permissions": {
"audio-capture" : {
"description" : "Audio capture"
},
"speech-recognition" : {
"description" : "Speech recognition"
}
}
You also need a privileged app, so you need to include this as well:
"type": "privileged"
SpeechGrammarList