From 93addfeeab508949a4da71aac0ae95e98c89e24a Mon Sep 17 00:00:00 2001 From: chenfufeng Date: Tue, 28 Feb 2023 10:34:22 +0800 Subject: [PATCH] =?UTF-8?q?[Opt3.0]=E8=87=AA=E5=8A=A8=E5=88=87=E6=8D=A2Tts?= =?UTF-8?q?=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/mogo/commons/voice/AIAssist.java | 23 +++++++++++++++---- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/foudations/mogo-commons/src/main/java/com/mogo/commons/voice/AIAssist.java b/foudations/mogo-commons/src/main/java/com/mogo/commons/voice/AIAssist.java index c721510100..534f80f4d6 100644 --- a/foudations/mogo-commons/src/main/java/com/mogo/commons/voice/AIAssist.java +++ b/foudations/mogo-commons/src/main/java/com/mogo/commons/voice/AIAssist.java @@ -53,11 +53,24 @@ public class AIAssist { private AIAssist(Context context) { try { // 暂时换成反射,解决死锁问题 - // TODO:("支持切换思必驰和科大讯飞") - Class clazz = Class.forName("com.mogo.tts.pad.PadTTS"); -// Class clazz = Class.forName("com.mogo.tts.iflytek.IFlyTekTts"); - mTTS = (IMogoTTS) clazz.getConstructor().newInstance(); - mTTS.init(context); + Class clazz1 = null; + Class clazz2 = null; + try { + clazz1 = Class.forName("com.mogo.tts.pad.PadTTS"); + } catch (Exception ignored) {} + + try { + clazz2 = Class.forName("com.mogo.tts.iflytek.IFlyTekTts"); + } catch (Exception ignored) {} + + if (clazz1 != null) { + mTTS = (IMogoTTS) clazz1.getConstructor().newInstance(); + } else if (clazz2 != null) { + mTTS = (IMogoTTS) clazz2.getConstructor().newInstance(); + } + if (mTTS != null) { + mTTS.init(context); + } // mTTS = (IMogoTTS) ARouter.getInstance().build(MogoTTSConstants.API_PATH).navigation(context.getApplicationContext()); } catch (Exception e) { e.printStackTrace();