Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/184.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java android设备在其生命周期内是否固定了额外的受支持语言列表?_Java_Android_Speech Recognition - Fatal编程技术网

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,第一次获取并永久缓存是否好?它是否依赖于任何设备设置自定义