java - 任务完成后,如何让我的 android 应用说“任务已完成”?
问题描述
我正在创建一个用户界面,并希望设备在到达指定位置 ( onFinished
) 后说“享受您的用餐”。
@Override
public void onFinished(PeanutPath runningPath) {
log.d(TAG, "onFinished" + ", targetId:" + runningPath.getDestinationId());
tvPilotStatus.setText("【Target:" + runningPath.getDestinationId() + "】" + "Finished");
tts.speak("Enjoy your meal", TextToSpeech.QUEUE_FLUSH, null);
}
我希望设备在完成任务后会说“享受您的用餐”。
解决方案
TextToSpeech
我认为您在初始化实例时遇到了一些问题。您应该像这样初始化它:
tts = new TextToSpeech(this, new TextToSpeech.OnInitListener() {
@Override
public void onInit(int i) {
int ttsLang = tts.setLanguage(Locale.US);
if (ttsLang == TextToSpeech.LANG_MISSING_DATA
|| ttsLang == TextToSpeech.LANG_NOT_SUPPORTED) {
Log.e("TTS", "The Language is not supported!");
} else {
Log.i("TTS", "Language Supported.");
}
Log.i("TTS", "Initialization success.");
}
});
这也可以帮助您检查语言是否可用。
推荐阅读
- python - 使用 beautifulsoup 获取 youtube 视频的信息
- javascript - Javascript正则表达式匹配不重复的9位数字
- java - 自定义声音推送通知
- corda - Corda - 为模拟网络指定应用程序名称
- c# - 使用 C# 隐藏窗口
- python - 为灰度 MRI 数据的二进制分类构建 3D CNN,尝试 model.fit 时的数据维度问题
- java - Netty 客户端在数天或数小时后停止读取套接字数据
- navigation - 如何在 Mapbox Android 中获取路径的原始 Json 数据
- r - 如何使用两个数据框根据公式创建多个矩阵并一次性将这些矩阵相加?
- reactjs - 在 VideoJs 中加载视频时传递标头参数