我在Android上使用TextToSpeech类时遇到了一些问题。为了更好地解释我的问题,我必须解释我只使用java,一个webview页面和angular来与我的后端通信。
这是我的html文件,它调用了我的angular函数,然后调用了一个java函数
<body ng-controller="speechController">
<div class="speech-container">
<div class="page-container">
<div class="page-content">
<div class="content-wrapper">
<div class="form-group">
<button class="btn bg-pink-400 btn-block" ng-click="talk()">Pressione para falar... <i class="icon-arrow-right14 position-right"></i>
</button>
</div>
<div class="form-group">
<button class="btn bg-pink-400 btn-block" ng-click="listen()">Pressione para ouvir... <i class="icon-arrow-right14 position-right"></i>
</button>
</div>
</div>
</div>
</div>
</div>
</body>这是我的java函数的样子。主要的问题是显示"tts.speak“的行不能正常工作,我已经实例化了变量"tts”并实现了TextToSpeech.OnInitListener,我不知道是什么原因导致该变量保持为空。
@JavascriptInterface
@SuppressWarnings("deprecation") // Support older API levels too.
public void speak(String text, Boolean override) {
text="teste2";
tts.speak(text, TextToSpeech.QUEUE_FLUSH, null);
}发布于 2017-09-19 00:19:32
我就想明白了。我所要做的就是将以下代码添加到我的onCreate()中:
tts=new TextToSpeech(getApplicationContext(), new TextToSpeech.OnInitListener() {
@Override
public void onInit(int status) {
if(status != TextToSpeech.ERROR) {
tts.setLanguage(Locale.getDefault());
}
}
});https://stackoverflow.com/questions/46282032
复制相似问题