2

のインスタンスを作成した後、ユーザーがマイクへのアクセスを許可したかどうかを知る最善の方法は何webkitSpeechRecognitionですか?

私の頭に浮かんだ最初のアイデアは、webkitSpeechRecognition:onstartメソッドを使用してローカルステータス参照を更新することでした:

var permission  = false;
var recognition = new webkitSpeechRecognition();
recognition.continuous     = true;
recognition.interimResults = true;

recognition.onstart = function() { permission = true; }

しかし、グローバルな読み取り専用値がブラウザーによって既に設定されている可能性があるため、これは冗長に思えます。

何かご意見は?

4

1 に答える 1

1

Googleの例に基づくと、ユーザーの許可を示すブラウザー全体のプロパティはないようです。

onstart(現時点では) 適切な解決策は、イベントをリッスンしてonend、音声認識ロジックの範囲内でプロパティを設定することです。

var permission  = false;
var recognition = new webkitSpeechRecognition();
recognition.continuous     = true;
recognition.interimResults = true;

// Start event is fired when user accept
recognition.onstart = function() { 
  permission = true; 
}

// End event is fired when the permission expire
recognition.onend   = function() { 
  permission = false; 
}

recognition.start();
于 2014-05-04T15:08:47.110 に答える