From 96899229b2c76f94bf461f3c5009d984e124fbaf Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 17 Apr 2020 17:47:40 +0800 Subject: [PATCH 1/3] wait continue --- config.gradle | 2 + foudations/mogo-commons/build.gradle | 1 + .../java/com/mogo/commons/voice/AIAssist.java | 61 ++++++++++++++++++- gradle.properties | 53 ++++++++-------- .../amap/navi/AMapNaviListenerAdapter.java | 3 + .../mogo/map/impl/amap/navi/NaviClient.java | 2 +- 6 files changed, 91 insertions(+), 31 deletions(-) diff --git a/config.gradle b/config.gradle index 1d47272fe2..0a88a322ce 100644 --- a/config.gradle +++ b/config.gradle @@ -48,6 +48,8 @@ ext { fresco : 'com.facebook.fresco:fresco:1.1.0', // 公司服务 - 语音 aiassist : "com.zhidaoauto.common:service:1.0.4.10", + // 语音替换方案 暂时只用TTS 解决焦点问题 + aiassistReplace : "com.zhidao.mogoVoicesdk:voice:1.0.4", // 公司服务 - 埋点 analytics : "com.elegant.analytics:analytics:1.1.19", diff --git a/foudations/mogo-commons/build.gradle b/foudations/mogo-commons/build.gradle index 682617dd4d..0f2fc4036c 100644 --- a/foudations/mogo-commons/build.gradle +++ b/foudations/mogo-commons/build.gradle @@ -37,6 +37,7 @@ android { dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) api rootProject.ext.dependencies.aiassist + api rootProject.ext.dependencies.aiassistReplace api rootProject.ext.dependencies.androidxappcompat api rootProject.ext.dependencies.analytics implementation rootProject.ext.dependencies.arouter 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 c8a7924de0..295fd6d847 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 @@ -8,6 +8,10 @@ import android.text.TextUtils; import com.mogo.utils.logger.Logger; import com.zhidao.auto.platform.voice.VoiceClient; +import com.zhidao.voicesdk.MogoVoiceManager; +import com.zhidao.voicesdk.MogoVoiceManagerImpl; +import com.zhidao.voicesdk.callback.OnConnStatusListener; +import com.zhidao.voicesdk.callback.OnTtsListener; import java.util.ArrayList; import java.util.HashMap; @@ -22,13 +26,14 @@ import java.util.concurrent.ConcurrentHashMap; *

* 语音助手通信助手 */ -public class AIAssist implements VoiceClient.VoiceCmdCallBack { +public class AIAssist implements VoiceClient.VoiceCmdCallBack , OnTtsListener { private static final String TAG = "AIAssist"; private static volatile AIAssist sInstance; private String mLastQAndASpeakText; private boolean mHasFlush = false; + private boolean mInitReady = false; public static AIAssist getInstance( Context context ) { if ( sInstance == null ) { @@ -56,6 +61,7 @@ public class AIAssist implements VoiceClient.VoiceCmdCallBack { } private final VoiceClient mVoiceClient; + private MogoVoiceManager mogoVoiceManager; // 免唤醒指令 private Map< String, List< IMogoVoiceCmdCallBack > > mCmdMap = new HashMap<>(); // 问答指令 @@ -70,7 +76,7 @@ public class AIAssist implements VoiceClient.VoiceCmdCallBack { mVoiceClient = new VoiceClient( context.getApplicationContext() ); mVoiceClient.setCallBack( this ); initFlushStatus( context ); - + initSpeech( context ); Logger.w( TAG, "voice is ready = %s", mHasFlush ); } @@ -78,6 +84,24 @@ public class AIAssist implements VoiceClient.VoiceCmdCallBack { mHasFlush = isVoiceServiceReady( context ); } + /** + * 初始化 + */ + private void initSpeech( Context context ){ + mogoVoiceManager = MogoVoiceManagerImpl.getInstance(); + mogoVoiceManager.init(context, new OnConnStatusListener() { + @Override + public void onSuccess() { + mInitReady = true; + } + + @Override + public void onFailed() { + + } + }); + } + /** * 是否语音注册成功 * @return @@ -185,7 +209,6 @@ public class AIAssist implements VoiceClient.VoiceCmdCallBack { } } - /** * 语音播报 * @@ -402,4 +425,36 @@ public class AIAssist implements VoiceClient.VoiceCmdCallBack { return false; } + public void speakTTSAndDuck(String text ){ + speakTTSAndDuck(text,null); + } + + public void speakTTSAndDuck( String text, IMogoVoiceCmdCallBack callBack ){ + try { + if( mInitReady ){ + mSpeakVoiceMap.put( text, callBack ); + mogoVoiceManager.toSpeak( text, -3, this); + } + } catch ( Exception e ) { + } + } + + @Override + public void onTtsStart(String ext) { + + } + + @Override + public void onTtsFinish(String speakText) { + IMogoVoiceCmdCallBack callBack = mSpeakVoiceMap.remove( speakText ); + if ( callBack != null ) { + callBack.onSpeakEnd( speakText ); + } + } + + @Override + public void onTtsError(String ext) { + + } + } diff --git a/gradle.properties b/gradle.properties index d3345f343c..996e5e925a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -27,38 +27,38 @@ PASSWORD=xintai2018 RELEASE=false # 模块版本 ## 工程内模块 -MOGO_COMMONS_VERSION=1.0.3.1 -MOGO_UTILS_VERSION=1.0.3.1 -MAP_AMAP_VERSION=1.0.3.1 -MOGO_MAP_VERSION=1.0.3.1 -MOGO_MAP_API_VERSION=1.0.3.1 -MOGO_SERVICE_VERSION=1.0.3.1 -MOGO_SERVICE_API_VERSION=1.0.3.1 -MOGO_CONNECTION_VERSION=1.0.3.1 -MOGO_MODULE_APPS_VERSION=1.0.3.1 -MOGO_MODULE_NAVI_VERSION=1.0.3.1 -MOGO_MODULE_SHARE_VERSION=1.0.3.1 -MOGO_MODULE_COMMON_VERSION=1.0.3.2 -MOGO_MODULE_MAIN_VERSION=1.0.3.1 -MOGO_MODULE_MAP_VERSION=1.0.3.1 -MOGO_MODULE_SERVICE_VERSION=1.0.3.1 -MOGO_MODULE_EXTENSIONS_VERSION=1.0.3.1 -MOGO_MODULE_SEARCH_VERSION=1.0.3.1 -MOGO_MODULE_BACK_VERSION=1.0.3.1 -MOGO_MODULE_GPS_SIMULATOR_VERSION=1.0.3.1 -MOGO_MODULE_GPS_SIMULATOR_DEBUG_VERSION=1.0.3.1 -MOGO_MODULE_GPS_SIMULATOR_NOOP_VERSION=1.0.3.1 +MOGO_COMMONS_VERSION=1.0.3.3 +MOGO_UTILS_VERSION=1.0.3.3 +MAP_AMAP_VERSION=1.0.3.4 +MOGO_MAP_VERSION=1.0.3.4 +MOGO_MAP_API_VERSION=1.0.3.4 +MOGO_SERVICE_VERSION=1.0.3.5 +MOGO_SERVICE_API_VERSION=1.0.3.5 +MOGO_CONNECTION_VERSION=1.0.3.4 +MOGO_MODULE_APPS_VERSION=1.0.3.4 +MOGO_MODULE_NAVI_VERSION=1.0.3.4 +MOGO_MODULE_SHARE_VERSION=1.0.3.4 +MOGO_MODULE_COMMON_VERSION=1.0.3.4 +MOGO_MODULE_MAIN_VERSION=1.0.3.4 +MOGO_MODULE_MAP_VERSION=1.0.3.4 +MOGO_MODULE_SERVICE_VERSION=1.0.3.4 +MOGO_MODULE_EXTENSIONS_VERSION=1.0.3.5 +MOGO_MODULE_SEARCH_VERSION=1.0.3.4 +MOGO_MODULE_BACK_VERSION=1.0.3.4 +MOGO_MODULE_GPS_SIMULATOR_VERSION=1.0.3.4 +MOGO_MODULE_GPS_SIMULATOR_DEBUG_VERSION=1.0.3.4 +MOGO_MODULE_GPS_SIMULATOR_NOOP_VERSION=1.0.3.4 +MOGO_MODULE_AUTHORIZE_VERSION=1.0.3.4 +MOGO_MODULE_GUIDE_VERSION=1.0.3.4 -MOGO_MODULE_AUTHORIZE_VERSION=1.0.0 -MOGO_MODULE_GUIDE_VERSION=1.0.0 ## 工程外部模块 # 探路 MOGO_MODULE_TANLU_VERSION=1.0.4.2 # 车聊聊 -CARCHATTING_VERSION=1.0.3 +CARCHATTING_VERSION=1.0.3.2-SNAPSHOT # 车聊聊接口 -CARCHATTINGPROVIDER_VERSION=1.0.3 +CARCHATTINGPROVIDER_VERSION=1.0.3.2-SNAPSHOT # 视频引导 MOGO_MODULE_GUIDESHOW_VERSION=1.0.2-SNAPSHOT # 视频引导接口 @@ -66,7 +66,7 @@ MOGO_MODULE_GUIDESHOW_PROVIDER_VERSION=1.0.2-SNAPSHOT # 在线车辆F MOGO_MODULE_ONLINECAR_VERSION=1.0.3.1 # v2x -MOGO_MODULE_V2X_VERSION=1.0.3.2 +MOGO_MODULE_V2X_VERSION=1.0.3.3-SNAPSHOT # 媒体卡片 MOGO_MODULE_MEDIA_VERSION=1.0.4 # 推送 @@ -75,4 +75,3 @@ MOGO_MODULE_PUSH_VERSION=1.0.1 MOGO_MODULE_AD_CARD_VERSION=1.0.1 # 新鲜事 MOGO_MODULE_FRESH_NEWS_VERSION=1.0.3.2 - diff --git a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/navi/AMapNaviListenerAdapter.java b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/navi/AMapNaviListenerAdapter.java index b851ca258c..5e1eff04c3 100644 --- a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/navi/AMapNaviListenerAdapter.java +++ b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/navi/AMapNaviListenerAdapter.java @@ -15,6 +15,8 @@ import com.amap.api.navi.model.AimLessModeCongestionInfo; import com.amap.api.navi.model.AimLessModeStat; import com.amap.api.navi.model.NaviInfo; import com.autonavi.tbt.TrafficFacilityInfo; +import com.mogo.commons.AbsMogoApplication; +import com.mogo.commons.voice.AIAssist; import com.mogo.map.MogoLatLng; import com.mogo.utils.logger.Logger; import java.util.List; @@ -64,6 +66,7 @@ public abstract class AMapNaviListenerAdapter implements AMapNaviListener { public void onGetNavigationText( String s ) { mLastSpeakWord = s; Logger.d( TAG, s ); + AIAssist.getInstance(AbsMogoApplication.getApp()).speakTTSAndDuck(s); } @Override diff --git a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/navi/NaviClient.java b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/navi/NaviClient.java index 64d0b14bc9..c9928fd2c5 100644 --- a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/navi/NaviClient.java +++ b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/navi/NaviClient.java @@ -77,7 +77,7 @@ public class NaviClient implements IMogoNavi { mContext = context; mAMapNavi = AMapNavi.getInstance( context ); mAMapNavi.setEmulatorNaviSpeed( 120 ); - mAMapNavi.setUseInnerVoice( true, true ); + mAMapNavi.setUseInnerVoice( false, true ); mAMapNaviListener = new NaviListenerAdapter( context, mAMapNavi, this ); mAimlessModeListener = new AimlessModeListenerAdapter() { }; From 0222041156d4692ddfcb48e7d983c3555324c14c Mon Sep 17 00:00:00 2001 From: lidongxiu Date: Fri, 17 Apr 2020 19:07:47 +0800 Subject: [PATCH 2/3] update media card version 1.0.4.1 --- gradle.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle.properties b/gradle.properties index 65b4818a3b..341c9482fe 100644 --- a/gradle.properties +++ b/gradle.properties @@ -67,7 +67,7 @@ MOGO_MODULE_ONLINECAR_VERSION=1.0.3.1 # v2x MOGO_MODULE_V2X_VERSION=1.0.3.2 # 媒体卡片 -MOGO_MODULE_MEDIA_VERSION=1.0.4 +MOGO_MODULE_MEDIA_VERSION=1.0.4.1 # 推送 MOGO_MODULE_PUSH_VERSION=1.0.1 # 广告资源位 From 9350929c60587b767efaaa41eb439f8ab9c80641 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Sun, 19 Apr 2020 18:46:56 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E7=BB=9F=E4=B8=80=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E4=BA=86Maven=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/misc.xml | 2 +- gradle.properties | 46 +++++++++++++++++++++++----------------------- 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/.idea/misc.xml b/.idea/misc.xml index 2dc54c489f..707ee6e613 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 341c9482fe..7c595ded4b 100644 --- a/gradle.properties +++ b/gradle.properties @@ -27,29 +27,29 @@ PASSWORD=xintai2018 RELEASE=false # 模块版本 ## 工程内模块 -MOGO_COMMONS_VERSION=1.0.3.3 -MOGO_UTILS_VERSION=1.0.3.3 -MAP_AMAP_VERSION=1.0.3.4 -MOGO_MAP_VERSION=1.0.3.4 -MOGO_MAP_API_VERSION=1.0.3.4 -MOGO_SERVICE_VERSION=1.0.3.5 -MOGO_SERVICE_API_VERSION=1.0.3.5 -MOGO_CONNECTION_VERSION=1.0.3.4 -MOGO_MODULE_APPS_VERSION=1.0.3.4 -MOGO_MODULE_NAVI_VERSION=1.0.3.4 -MOGO_MODULE_SHARE_VERSION=1.0.3.4 -MOGO_MODULE_COMMON_VERSION=1.0.3.4 -MOGO_MODULE_MAIN_VERSION=1.0.3.4 -MOGO_MODULE_MAP_VERSION=1.0.3.4 -MOGO_MODULE_SERVICE_VERSION=1.0.3.4 -MOGO_MODULE_EXTENSIONS_VERSION=1.0.3.5 -MOGO_MODULE_SEARCH_VERSION=1.0.3.4 -MOGO_MODULE_BACK_VERSION=1.0.3.4 -MOGO_MODULE_GPS_SIMULATOR_VERSION=1.0.3.4 -MOGO_MODULE_GPS_SIMULATOR_DEBUG_VERSION=1.0.3.4 -MOGO_MODULE_GPS_SIMULATOR_NOOP_VERSION=1.0.3.4 -MOGO_MODULE_AUTHORIZE_VERSION=1.0.3.4 -MOGO_MODULE_GUIDE_VERSION=1.0.3.4 +MOGO_COMMONS_VERSION=1.0.3.8 +MOGO_UTILS_VERSION=1.0.3.8 +MAP_AMAP_VERSION=1.0.3.8 +MOGO_MAP_VERSION=1.0.3.8 +MOGO_MAP_API_VERSION=1.0.3.8 +MOGO_SERVICE_VERSION=1.0.3.8 +MOGO_SERVICE_API_VERSION=1.0.3.8 +MOGO_CONNECTION_VERSION=1.0.3.8 +MOGO_MODULE_APPS_VERSION=1.0.3.8 +MOGO_MODULE_NAVI_VERSION=1.0.3.8 +MOGO_MODULE_SHARE_VERSION=1.0.3.8 +MOGO_MODULE_COMMON_VERSION=1.0.3.8 +MOGO_MODULE_MAIN_VERSION=1.0.3.8 +MOGO_MODULE_MAP_VERSION=1.0.3.8 +MOGO_MODULE_SERVICE_VERSION=1.0.3.8 +MOGO_MODULE_EXTENSIONS_VERSION=1.0.3.8 +MOGO_MODULE_SEARCH_VERSION=1.0.3.8 +MOGO_MODULE_BACK_VERSION=1.0.3.8 +MOGO_MODULE_GPS_SIMULATOR_VERSION=1.0.3.8 +MOGO_MODULE_GPS_SIMULATOR_DEBUG_VERSION=1.0.3.8 +MOGO_MODULE_GPS_SIMULATOR_NOOP_VERSION=1.0.3.8 +MOGO_MODULE_AUTHORIZE_VERSION=1.0.3.8 +MOGO_MODULE_GUIDE_VERSION=1.0.3.8 ## 工程外部模块 # 探路