首页 > 解决方案 > TextToSpeech 在 API 23 中给出“语言不支持”错误

问题描述

我正在设置TextToSpeech我的应用程序。它在 API 26 及更高版本上运行良好,但在 API 23 上运行良好。它给出的语言不支持错误。我的日志猫:

07-31 16:22:04.872 6935-7000/com.caneraltuner.tarihkitabm D/EGL_emulation: eglMakeCurrent: 0xaa94e480: ver 3 0 (tinfo 0xaa951d00)
07-31 16:22:04.876 6935-7000/com.caneraltuner.tarihkitabm D/EGL_emulation: eglMakeCurrent: 0xaa94e480: ver 3 0 (tinfo 0xaa951d00)
07-31 16:22:04.897 6935-7000/com.caneraltuner.tarihkitabm D/EGL_emulation: eglMakeCurrent: 0xaa94e480: ver 3 0 (tinfo 0xaa951d00)
07-31 16:22:04.906 6935-7000/com.caneraltuner.tarihkitabm D/EGL_emulation: eglMakeCurrent: 0xaa94e480: ver 3 0 (tinfo 0xaa951d00)

还有我的代码块:

public void speakOut(View view) {
    mTTS = new TextToSpeech(getApplicationContext(), new TextToSpeech.OnInitListener() {
        @Override
        public void onInit(int status) {
            if (status == TextToSpeech.SUCCESS) {
                Locale locale = new Locale("tr", "TR");
                int result = mTTS.setLanguage(locale);
                if (result == TextToSpeech.LANG_MISSING_DATA) {
                    Toast.makeText(getApplicationContext(), "Hata", Toast.LENGTH_SHORT).show();
                } else if (result == TextToSpeech.LANG_NOT_SUPPORTED) {
                    Toast.makeText(getApplicationContext(), "Dil Desteklenmiyor", Toast.LENGTH_SHORT).show();
                } else {
                    mTTS.speak(leaderInfoText.getText().toString(),TextToSpeech.QUEUE_FLUSH,null);
                }

            } else {
                Toast.makeText(getApplicationContext(), "Ses Yüklenemedi", Toast.LENGTH_SHORT).show();
            }

        }
    });
}

标签: javaandroid

解决方案


推荐阅读