语音交互应用 [Android]
Voice Interaction App [Android]
我想知道你们是如何制作像 Utter 或 Siri 这样的应用程序的。不是那么复杂,但可以让我从用户那里获得声音输入并以更新的 UI 和声音确认进行响应。
例如:我 phone 花了多少钱?
该应用程序将回答“Nexus 5 还是 Samsung S4?” (假设它有一个我所有智能 phone 的列表)
在我回答后,它会在 UI 中显示价格并进行语音确认。
现在,我已经看到 Android M 是可行的,但大多数设备更新到 Android M 还需要一段时间。我想要一个落后的解决方案兼容的。
对需要的工具有什么想法吗?
谢谢,
Android API 长期以来一直这样做。这是旧代码,但我认为它应该可以工作。它通过意图启动 google 语音识别对话框。
private void startVoiceRecognitionActivity()
{
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Voice recognition Demo...");
startActivityForResult(intent, REQUEST_CODE);
}
/**
* Handle the results from the voice recognition activity.
*/
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
if (requestCode == REQUEST_CODE && resultCode == RESULT_OK)
{
// Populate the wordsList with the String values the recognition engine thought it heard
ArrayList<String> matches = data.getStringArrayListExtra(
RecognizerIntent.EXTRA_RESULTS);
wordsList.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,
matches));
}
super.onActivityResult(requestCode, resultCode, data);
}
有用的链接:
http://android-developers.blogspot.com.es/2010/03/speech-input-api-for-android.html
http://www.jameselsey.co.uk/blogs/techblog/android-how-to-implement-voice-recognition-a-nice-easy-tutorial/
我想知道你们是如何制作像 Utter 或 Siri 这样的应用程序的。不是那么复杂,但可以让我从用户那里获得声音输入并以更新的 UI 和声音确认进行响应。 例如:我 phone 花了多少钱? 该应用程序将回答“Nexus 5 还是 Samsung S4?” (假设它有一个我所有智能 phone 的列表) 在我回答后,它会在 UI 中显示价格并进行语音确认。
现在,我已经看到 Android M 是可行的,但大多数设备更新到 Android M 还需要一段时间。我想要一个落后的解决方案兼容的。
对需要的工具有什么想法吗?
谢谢,
Android API 长期以来一直这样做。这是旧代码,但我认为它应该可以工作。它通过意图启动 google 语音识别对话框。
private void startVoiceRecognitionActivity()
{
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Voice recognition Demo...");
startActivityForResult(intent, REQUEST_CODE);
}
/**
* Handle the results from the voice recognition activity.
*/
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
if (requestCode == REQUEST_CODE && resultCode == RESULT_OK)
{
// Populate the wordsList with the String values the recognition engine thought it heard
ArrayList<String> matches = data.getStringArrayListExtra(
RecognizerIntent.EXTRA_RESULTS);
wordsList.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,
matches));
}
super.onActivityResult(requestCode, resultCode, data);
}
有用的链接: http://android-developers.blogspot.com.es/2010/03/speech-input-api-for-android.html http://www.jameselsey.co.uk/blogs/techblog/android-how-to-implement-voice-recognition-a-nice-easy-tutorial/