add voice control

This commit is contained in:
lixiaopeng
2020-12-30 17:40:02 +08:00
parent 2e8a0ec17f
commit 3d223d1fd8
3 changed files with 55 additions and 7 deletions

View File

@@ -134,10 +134,4 @@ public class V2XConst {
*/
public static final String V2X_OPTIMAL_SPEED_MARKER = "V2X_OPTIMAL_SPEED_MARKER";
//免唤醒词
public static final String[] UNWAKE_NAVI_CONFIRM = {"开始导航", "开启导航", "好的", "开始", "导航", "确定", "确认", ""};
public static final String[] UNWAKE_NAVI_CANCLE = {"取消", "关闭", "不要", "不导航"};
public static final String V2X_CONFIRM_ACTION = "V2X_CONFIRM_ACTION";
public static final String V2X_CANCLE_ACTION = "V2X_CANCLE_ACTION";
}

View File

@@ -1,5 +1,6 @@
package com.mogo.module.v2x.adapter.holder;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -8,10 +9,14 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import com.mogo.module.common.entity.MarkerExploreWay;
import com.mogo.module.common.entity.V2XEventShowEntity;
import com.mogo.module.common.entity.V2XRecommendRouteEntity;
import com.mogo.module.v2x.R;
import com.mogo.module.v2x.scenario.view.IV2XWindow;
import com.mogo.module.v2x.voice.V2XVoiceCallbackListener;
import com.mogo.module.v2x.voice.V2XVoiceConstants;
import com.mogo.module.v2x.voice.V2XVoiceManager;
/**
* created by wujifei on 2020/12/29 20:39
@@ -31,6 +36,45 @@ public class V2XRecommendRouteVH extends V2XBaseViewHolder<V2XRecommendRouteEnti
@Override
public void initView(V2XRecommendRouteEntity viewData) {
registerUnwakeNavi();
}
private V2XVoiceCallbackListener mStartNavi = (command, intent) -> {
try {
//开启导航 TODO
MarkerExploreWay exploreWay = new MarkerExploreWay();
triggerStartNavi(exploreWay);
Log.d("V2XRecommendRouteVH", "mStartNavi ------");
} catch (Exception e) {
e.printStackTrace();
}
};
private V2XVoiceCallbackListener mCancleNavi = (command, intent) -> {
try {
//取消导航
unRegisterUnwakeNavi();
Log.d("V2XRecommendRouteVH", "cancleNavi ------");
} catch (Exception e) {
e.printStackTrace();
}
};
private void registerUnwakeNavi() {
V2XVoiceManager.INSTANCE
.registerWakeCmd(V2XVoiceConstants.V2X_CONFIRM_ACTION,
mStartNavi)
.registerWakeCmd(V2XVoiceConstants.V2X_CANCLE_ACTION,
mCancleNavi);
}
private void unRegisterUnwakeNavi() {
V2XVoiceManager.INSTANCE
.unRegisterWakeCmd(V2XVoiceConstants.V2X_CONFIRM_ACTION)
.unRegisterWakeCmd(V2XVoiceConstants.V2X_CANCLE_ACTION);
}
}

View File

@@ -283,6 +283,13 @@ public class V2XVoiceConstants {
public static final String COMMAND_ZHIDAO_V2X_FEEDBACK_SHI_GONG_NO_UN_WAKEUP = "COMMAND_ZHIDAO_V2X_FEEDBACK_SHI_GONG_NO_UN_WAKEUP";
public static final String[] COMMAND_ZHIDAO_V2X_FEEDBACK_SHI_GONG_NO_UN_WAKEUP_WORDS = {"没注意", "没看到", "没有施工","无施工", "很正常", "取消", "关闭"};
//免唤醒词
public static final String V2X_CONFIRM_ACTION = "V2X_CONFIRM_ACTION";
public static final String[] UNWAKE_NAVI_CONFIRM = {"开始导航", "开启导航", "好的", "开始", "导航", "确定", "确认", ""};
public static final String V2X_CANCLE_ACTION = "V2X_CANCLE_ACTION";
public static final String[] UNWAKE_NAVI_CANCLE = {"取消", "关闭", "不要", "不导航"};
static {
// 免唤醒 默认
@@ -321,6 +328,9 @@ public class V2XVoiceConstants {
sVoiceCmds.put(COMMAND_ZHIDAO_V2X_FEEDBACK_SHI_GONG_YES_UN_WAKEUP, COMMAND_ZHIDAO_V2X_FEEDBACK_SHI_GONG_YES_UN_WAKEUP_WORDS);
sVoiceCmds.put(COMMAND_ZHIDAO_V2X_FEEDBACK_SHI_GONG_NO_UN_WAKEUP, COMMAND_ZHIDAO_V2X_FEEDBACK_SHI_GONG_NO_UN_WAKEUP_WORDS);
sVoiceCmds.put(V2X_CONFIRM_ACTION, UNWAKE_NAVI_CONFIRM);
sVoiceCmds.put(V2X_CANCLE_ACTION, UNWAKE_NAVI_CANCLE);
//2020-6-24 顺义演示需求添加,现合并至launcher 更新时间2020-08-25
sVoiceCmds.put(COMMAND_ZHIDAO_V2X_CALL_FRONT_CAR_DEMO_UN_WAKEUP, COMMAND_ZHIDAO_V2X_CALL_FRONT_CAR_DEMO_UN_WAKEUP_WORDS);