diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt
index 175f8700f2..c10b7c8054 100644
--- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt
+++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/DebugSettingView.kt
@@ -11,6 +11,7 @@ import android.graphics.drawable.ColorDrawable
import android.os.Build
import android.os.Process
import android.text.Html
+import android.text.TextUtils
import android.util.AttributeSet
import android.view.LayoutInflater
import android.view.View
@@ -31,10 +32,12 @@ import com.mogo.cloud.network.cronet.NetworkQualityListener
import com.mogo.cloud.network.cronet.QuicConfig
import com.mogo.cloud.passport.MoGoAiCloudClient
import com.mogo.cloud.passport.MoGoAiCloudClientConfig
+import com.mogo.commons.AbsMogoApplication
import com.mogo.commons.constants.SharedPrefsConstants
import com.mogo.commons.debug.DebugConfig
import com.mogo.commons.module.status.MogoStatusManager
import com.mogo.commons.storage.SharedPrefsMgr
+import com.mogo.commons.voice.AIAssist
import com.mogo.eagle.core.data.app.AppConfigInfo
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.data.config.HmiBuildConfig
@@ -101,6 +104,7 @@ import com.mogo.map.uicontroller.VisualAngleMode
import com.mogo.map.uicontroller.VisualAngleMode.*
import com.mogo.test.crashreport.CrashReportConstants
import com.mogo.test.crashreport.ITestCrashReportProvider
+import com.mogo.tts.base.IMogoTTSCallback
import com.zhidaoauto.map.data.road.RoadCross
import com.zhjt.mogo.adas.data.AdasConstants
import com.zhjt.service.chain.ChainLog
@@ -557,6 +561,55 @@ internal class DebugSettingView @JvmOverloads constructor(
}
}
+ /**
+ * 语音中心
+ */
+ tbTTSCenter.setOnCheckedChangeListener { buttonView, isChecked ->
+ if (isChecked) {
+ buttonView.setCompoundDrawables(null, null, iconDown, null)
+ //展示语音中心
+ ttsCenterContainer.visibility = View.VISIBLE
+ } else {
+ buttonView.setCompoundDrawables(null, null, iconRight, null)
+ //隐藏语音中心
+ ttsCenterContainer.visibility = View.GONE
+ }
+ }
+ etTTSContent.setOnFocusChangeListener { v, hasFocus ->
+ KeyboardUtils.showSoftInput()
+ }
+ btnStartTTS.setOnClickListener {
+ val content = etTTSContent.editableText.toString()
+ if (TextUtils.isEmpty(content)) {
+ ToastUtils.showShort("请输入语音播报内容")
+ return@setOnClickListener
+ }
+ UiThreadHandler.post {
+ AIAssist.getInstance(AbsMogoApplication.getApp())
+ .speakTTSVoiceWithLevel(content, AIAssist.LEVEL0, object: IMogoTTSCallback {
+ override fun onSpeakStart(speakText: String?) {
+ super.onSpeakStart(speakText)
+ ToastUtils.showShort("onSpeakStart -> $speakText")
+ }
+
+ override fun onSpeakEnd(speakText: String?) {
+ super.onSpeakEnd(speakText)
+ ToastUtils.showShort("onSpeakEnd -> $speakText")
+ }
+
+ override fun onSpeakError(speakText: String?, errorMsg: String?) {
+ super.onSpeakError(speakText, errorMsg)
+ ToastUtils.showShort("onSpeakError -> $speakText")
+ }
+
+ override fun onStopTts(speakText: String?) {
+ super.onStopTts(speakText)
+ ToastUtils.showShort("onStopTts -> $speakText")
+ }
+ })
+ }
+ }
+
/**
* 日志中心
*/
diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml
index e250c15a2c..15e7ec53fe 100644
--- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml
+++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_debug_setting.xml
@@ -2469,6 +2469,58 @@
+
+
+
+
+
+
+
+
+