有了這個代碼打開語音輸入與命令的聲音:安卓:如何從我的應用程序
private void promptSpeechInput() {
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, Locale.getDefault());
intent.putExtra(RecognizerIntent.EXTRA_PROMPT,
getString(R.string.speech_prompt));
try {
startActivityForResult(intent, REQ_CODE_SPEECH_INPUT);
} catch (ActivityNotFoundException a) {
Toast.makeText(getApplicationContext(),
getString(R.string.speech_not_supported),
Toast.LENGTH_SHORT).show();
}
}
用型動物的方式(按鈕事件,手勢,生命週期),我可以調用這個方法來打開語音輸入提示就像我在谷歌搜索字段中的麥克風圖標中點擊一樣。 好吧,那很好。
但現在,我需要使用命令語音來調用此方法。與現在谷歌相同,我們說「Ok Google」,並出現語音輸入提示。我想在我的應用程序內執行此操作。例如,我在主要活動中,我說「聽我說」並調用方法promptSpeechInput。
我該怎麼做?
感謝您的幫助。
謝謝@LychmanIT,我已經測試過它,這工作正常。是不是我認爲的解決方案的最佳方式,但我可以這樣做: 我可以在所有屏幕中啓用「Ok Google」。當用戶在應用程序中時,他現在可以使用Google進行搜索,並且我可以獲取該命令並調用一個方法。 似乎不是一個美麗的解決方案,但用戶只能使用語音命令來操作應用程序。 –
我創建了一個測試項目,並且遇到問題。搜索工作正常,使用英語,但我來自巴西,即使在YouTube上搜索也無法正常工作。所以,我會嘗試其他方式。 –
是的,它似乎@ Simon_Phoenix的選項比我的好。祝你好運:) – LychmanIT