我是Android dev的新手。
我使用的是TextToSpeech,它在几个平台上都运行得很好,除了在一个特定的手机上(运行安卓4.4.2)。
在这里,TTS的实例化提供了一个空指针异常:
private TextToSpeech mTTS;
// ...
mTTS = new TextToSpeech(this, mTTSInitListener);
使用的Sdk版本是指定的最低版本: 19 (据我所知,TTS是在API level 4中添加的(因此是Android 1.6) )
android {
compileSdkVersion 21
buildToolsVersion '27.0.3'
defaultConfig {
minSdkVersion 19
targetSdkVersion 21
applicationId "myapp"
versionCode 73
versionName "1.1.0"
问题是:什么可以使TTS不可用/不可实例化?
thx
发布于 2018-05-31 17:07:34
首先,您应该检查设备是否支持TTS。如下代码所示:
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL, "en-US");
try {
startActivityForResult(intent, Constant.SEARCH_VOICE);
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
} catch (ActivityNotFoundException a) {
Toast t = Toast.makeText(mContext, getResources().getString(R.string.speech_error), Toast.LENGTH_SHORT);
t.show();
}
https://stackoverflow.com/questions/50620487
复制相似问题