【发布时间】:2016-05-18 10:57:57
【问题描述】:
我使用此代码修改语音识别的不同语言,如您所见,我使用 Spinner 选择其他语言。
public static String country;
语音识别码:
String name = country;
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE, name);
在我的 Spinner 中设置语言:
public String LanguageSelection() {
language_select_spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
// final String country;
switch (position){
case 0:
country="en"; // english
break;
case 1:
country="it"; // itally
break;
}
}
但这在意大利不起作用。
它只识别英语。
我该如何解决?
【问题讨论】:
-
it doesn't work in Italy是什么意思?它的工作(或不工作)独立于您所在的位置。 -
很明显,您需要在设备上安装所有想要使用的语言。并相应地设置区域设置,当您通过 Spinner 选择选择一个时。这两项任务都可以通过编程方式完成。
-
您的意思是要使用每种语言,必须在设备上安装该语言?但我一般都想这样做。
-
当然语言必须安装在设备上。或者它根本不起作用。但是,如果当前设备上缺少它,您可以通过编程方式下载它。
标签: android speech-recognition android-spinner