Android TextToSpeech 总是无法 运行
Android TextToSpeech always fails to Run
出于某种原因,尽管我已验证所需的数据文件可用,但总是调用 onInit()
并显示错误代码。
我试过启动 TTS(文本到语音)代码,该代码是从教程中完整复制的,但也不起作用
以下是我的初始化代码:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == DATA_CHECK_SUCCESS) {
if (resultCode == TextToSpeech.Engine.CHECK_VOICE_DATA_PASS) {
textToSpeech = new TextToSpeech(this, this);
}
else {
Intent installTTSIntent = new Intent();
installTTSIntent.setAction(TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA);
startActivity(installTTSIntent);
}
}
}
@Override
public void onInit(int initStatus) {
if (initStatus == TextToSpeech.SUCCESS) {
if(textToSpeech.isLanguageAvailable(Locale.US)==TextToSpeech.LANG_AVAILABLE)
textToSpeech.setLanguage(Locale.US);
}
else if (initStatus == TextToSpeech.ERROR) {
Toast.makeText(this, "Sorry! Text To Speech failed...", Toast.LENGTH_LONG).show();
}
}
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent TTSIntent = new Intent();
TTSIntent.setAction(TextToSpeech.Engine.ACTION_CHECK_TTS_DATA);
startActivityForResult(TTSIntent, DATA_CHECK_SUCCESS);
}
提前致谢
我之前在使用 Speech to Text 时遇到过类似的问题,问题是设备上安装的 Google 应用程序被禁用或没有麦克风权限。
检查这是否有助于解决您的问题。
事实证明这是 Android 模拟器随 Android studio 提供的问题,因为它不提供 TTS
出于某种原因,尽管我已验证所需的数据文件可用,但总是调用 onInit()
并显示错误代码。
我试过启动 TTS(文本到语音)代码,该代码是从教程中完整复制的,但也不起作用
以下是我的初始化代码:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == DATA_CHECK_SUCCESS) {
if (resultCode == TextToSpeech.Engine.CHECK_VOICE_DATA_PASS) {
textToSpeech = new TextToSpeech(this, this);
}
else {
Intent installTTSIntent = new Intent();
installTTSIntent.setAction(TextToSpeech.Engine.ACTION_INSTALL_TTS_DATA);
startActivity(installTTSIntent);
}
}
}
@Override
public void onInit(int initStatus) {
if (initStatus == TextToSpeech.SUCCESS) {
if(textToSpeech.isLanguageAvailable(Locale.US)==TextToSpeech.LANG_AVAILABLE)
textToSpeech.setLanguage(Locale.US);
}
else if (initStatus == TextToSpeech.ERROR) {
Toast.makeText(this, "Sorry! Text To Speech failed...", Toast.LENGTH_LONG).show();
}
}
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent TTSIntent = new Intent();
TTSIntent.setAction(TextToSpeech.Engine.ACTION_CHECK_TTS_DATA);
startActivityForResult(TTSIntent, DATA_CHECK_SUCCESS);
}
提前致谢
我之前在使用 Speech to Text 时遇到过类似的问题,问题是设备上安装的 Google 应用程序被禁用或没有麦克风权限。
检查这是否有助于解决您的问题。
事实证明这是 Android 模拟器随 Android studio 提供的问题,因为它不提供 TTS