Java android设备在其生命周期内是否固定了额外的受支持语言列表?
我通过发送Java android设备在其生命周期内是否固定了额外的受支持语言列表?,java,android,speech-recognition,Java,Android,Speech Recognition,我通过发送RecognizerIntent.ACTION\u GET\u LANGUAGE\u DETAILS有序广播,跟踪并查询支持的语言列表,如下所示: Intent detailsIntent = new Intent(RecognizerIntent.ACTION_GET_LANGUAGE_DETAILS); sendOrderedBroadcast( detailsIntent, null, new LanguageDetailsChecker(), null, Ac
RecognizerIntent.ACTION\u GET\u LANGUAGE\u DETAILS
有序广播,跟踪并查询支持的语言列表,如下所示:
Intent detailsIntent = new Intent(RecognizerIntent.ACTION_GET_LANGUAGE_DETAILS);
sendOrderedBroadcast(
detailsIntent, null, new LanguageDetailsChecker(), null, Activity.RESULT_OK, null, null);
其中LanguageDetailsSchecker是这样的:
public class LanguageDetailsChecker extends BroadcastReceiver
{
private List<String> supportedLanguages;
private String languagePreference;
@Override
public void onReceive(Context context, Intent intent)
{
Bundle results = getResultExtras(true);
if (results.containsKey(RecognizerIntent.EXTRA_LANGUAGE_PREFERENCE))
{
languagePreference =
results.getString(RecognizerIntent.EXTRA_LANGUAGE_PREFERENCE);
}
if (results.containsKey(RecognizerIntent.EXTRA_SUPPORTED_LANGUAGES))
{
supportedLanguages =
results.getStringArrayList(
RecognizerIntent.EXTRA_SUPPORTED_LANGUAGES);
}
}
}
public类语言detailschecker扩展了BroadcastReceiver
{
私有列表支持的语言;
私有字符串语言偏好;
@凌驾
公共void onReceive(上下文、意图)
{
Bundle results=getResultTextras(true);
if(results.containsKey(RecognizerIntent.EXTRA_LANGUAGE_PREFERENCE))
{
语言偏好=
results.getString(RecognizerIntent.EXTRA_LANGUAGE_首选项);
}
if(results.containsKey(RecognizerIntent.EXTRA_支持的语言))
{
支持的语言=
results.getStringArrayList(
RecognizerIntent.EXTRA_支持的_语言);
}
}
}
现在我想知道设备在整个生命周期中是否固定了supportedLanguages,第一次获取并永久缓存是否好?它是否依赖于任何设备设置自定义