opt
This commit is contained in:
@@ -14,8 +14,10 @@ import com.alibaba.android.arouter.launcher.ARouter;
|
||||
import com.mogo.commons.mvp.Presenter;
|
||||
import com.mogo.commons.voice.AIAssist;
|
||||
import com.mogo.commons.voice.IMogoVoiceCmdCallBack;
|
||||
import com.mogo.commons.voice.VoicePreemptType;
|
||||
import com.mogo.map.navi.IMogoNavi;
|
||||
import com.mogo.map.uicontroller.EnumMapUI;
|
||||
import com.mogo.map.uicontroller.MapControlResult;
|
||||
import com.mogo.module.common.MogoModulePaths;
|
||||
import com.mogo.service.IMogoServiceApis;
|
||||
import com.mogo.service.MogoServicePaths;
|
||||
@@ -39,20 +41,20 @@ import java.util.Map;
|
||||
* <p>
|
||||
* 描述
|
||||
*/
|
||||
public class MapPresenter extends Presenter<MapView> implements
|
||||
IMogoIntentListener,
|
||||
IMogoVoiceCmdCallBack {
|
||||
public class MapPresenter extends Presenter< MapView > implements
|
||||
IMogoIntentListener,
|
||||
IMogoVoiceCmdCallBack {
|
||||
|
||||
private static final String TAG = "MapPresenter";
|
||||
private static final String AUTONAVI_STANDARD_BROADCAST_RECV =
|
||||
"AUTONAVI_STANDARD_BROADCAST_RECV";
|
||||
"AUTONAVI_STANDARD_BROADCAST_RECV";
|
||||
private IMogoMapService mMogoMapService;
|
||||
private IMogoIntentManager mMogoIntentManager;
|
||||
private IMogoSearchManager mSearchManager;
|
||||
private IMogoRefreshStrategyController mRefreshStrategyController;
|
||||
|
||||
public MapPresenter(MapView view) {
|
||||
super(view);
|
||||
public MapPresenter( MapView view ) {
|
||||
super( view );
|
||||
initBroadcast();
|
||||
}
|
||||
|
||||
@@ -61,78 +63,68 @@ public class MapPresenter extends Presenter<MapView> implements
|
||||
*/
|
||||
private void initBroadcast() {
|
||||
BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {
|
||||
@Override public void onReceive(Context context, Intent intent) {
|
||||
@Override
|
||||
public void onReceive( Context context, Intent intent ) {
|
||||
String action = intent.getAction();
|
||||
if (TextUtils.equals(action, AUTONAVI_STANDARD_BROADCAST_RECV)) {
|
||||
int key_type = intent.getIntExtra("KEY_TYPE", 0);
|
||||
int type = intent.getIntExtra("EXTRA_TYPE", -1);
|
||||
int opera_type = intent.getIntExtra("EXTRA_OPERA", -1);
|
||||
if ( TextUtils.equals( action, AUTONAVI_STANDARD_BROADCAST_RECV ) ) {
|
||||
int key_type = intent.getIntExtra( "KEY_TYPE", 0 );
|
||||
int type = intent.getIntExtra( "EXTRA_TYPE", -1 );
|
||||
int opera_type = intent.getIntExtra( "EXTRA_OPERA", -1 );
|
||||
|
||||
Logger.d("NaviManager", "key_type" + key_type);
|
||||
if (key_type == 10027) {
|
||||
Logger.d( "NaviManager", "key_type" + key_type );
|
||||
if ( key_type == 10027 ) {
|
||||
|
||||
if (type == 0) {
|
||||
mView.getUIController().setTrafficEnabled(opera_type == 0);
|
||||
} else if (type == 1) {
|
||||
boolean isLocked = mMogoMapService.getMapUIController().isCarLocked();
|
||||
mView.getUIController().changeZoom(opera_type == 0);
|
||||
if ( isLocked ) {
|
||||
// 保持锁车状态
|
||||
UiThreadHandler.postDelayed( ()->{
|
||||
mView.getUIController().setLockZoom( ( ( int ) mMogoMapService.getMapUIController().getZoomLevel() ) );
|
||||
mMogoMapService.getMapUIController().recoverLockMode();//缩放地图会导致锁车发生改变,这里强制锁车
|
||||
}, 1_000 );
|
||||
} else {
|
||||
// 20s后锁车刷新
|
||||
mRefreshStrategyController.restartAutoRefreshAtTime( 20_000 );
|
||||
}
|
||||
} else if (type == 2) {
|
||||
if ( type == 0 ) {
|
||||
mView.getUIController().setTrafficEnabled( opera_type == 0 );
|
||||
} else if ( type == 1 ) {
|
||||
zoomMap( opera_type == 0 );
|
||||
} else if ( type == 2 ) {
|
||||
|
||||
mMogoIntentManager.invoke(AUTONAVI_STANDARD_BROADCAST_RECV,intent);
|
||||
if (opera_type == 0) {
|
||||
mView.getUIController().changeMapMode(EnumMapUI.CarUp_2D);
|
||||
} else if (opera_type == 1) {
|
||||
mView.getUIController().changeMapMode(EnumMapUI.NorthUP_2D);
|
||||
mMogoIntentManager.invoke( AUTONAVI_STANDARD_BROADCAST_RECV, intent );
|
||||
if ( opera_type == 0 ) {
|
||||
mView.getUIController().changeMapMode( EnumMapUI.CarUp_2D );
|
||||
} else if ( opera_type == 1 ) {
|
||||
mView.getUIController().changeMapMode( EnumMapUI.NorthUP_2D );
|
||||
//AIAssist.getInstance(getContext()).speakTTSVoice("已切换", null);
|
||||
|
||||
} else if (opera_type == 2) {
|
||||
mView.getUIController().changeMapMode(EnumMapUI.CarUp_3D);
|
||||
} else if ( opera_type == 2 ) {
|
||||
mView.getUIController().changeMapMode( EnumMapUI.CarUp_3D );
|
||||
//AIAssist.getInstance(getContext()).speakTTSVoice("已切换", null);
|
||||
}
|
||||
|
||||
}
|
||||
} else if (key_type == 10048) {
|
||||
} else if ( key_type == 10048 ) {
|
||||
//* @param type 0:自动; 1:白天; 2:黑夜
|
||||
int day_night_mode = intent.getIntExtra("EXTRA_DAY_NIGHT_MODE", -1);
|
||||
if (day_night_mode == 0) {
|
||||
mView.getUIController().changeMapMode(EnumMapUI.Type_AUTO_LIGHT_Night);
|
||||
} else if (day_night_mode == 1) {
|
||||
mView.getUIController().changeMapMode(EnumMapUI.Type_Light);
|
||||
} else if (day_night_mode == 2) {
|
||||
mView.getUIController().changeMapMode(EnumMapUI.Type_Night);
|
||||
int day_night_mode = intent.getIntExtra( "EXTRA_DAY_NIGHT_MODE", -1 );
|
||||
if ( day_night_mode == 0 ) {
|
||||
mView.getUIController().changeMapMode( EnumMapUI.Type_AUTO_LIGHT_Night );
|
||||
} else if ( day_night_mode == 1 ) {
|
||||
mView.getUIController().changeMapMode( EnumMapUI.Type_Light );
|
||||
} else if ( day_night_mode == 2 ) {
|
||||
mView.getUIController().changeMapMode( EnumMapUI.Type_Night );
|
||||
}
|
||||
|
||||
//intent.setAction("AUTONAVI_STANDARD_BROADCAST_RECV");
|
||||
//intent.putExtra("KEY_TYPE", 10049);
|
||||
//intent.putExtra("EXTRA_ENDURANCE_DATA", continueNavi);
|
||||
//继续导航
|
||||
} else if (key_type == 10049) {
|
||||
} else if ( key_type == 10049 ) {
|
||||
boolean extra_endurance_data =
|
||||
intent.getBooleanExtra("EXTRA_ENDURANCE_DATA", false);
|
||||
if (extra_endurance_data) {
|
||||
intent.getBooleanExtra( "EXTRA_ENDURANCE_DATA", false );
|
||||
if ( extra_endurance_data ) {
|
||||
mView.getUIController().recoverLockMode();
|
||||
}
|
||||
} else if (key_type == 10006) {
|
||||
} else if ( key_type == 10006 ) {
|
||||
|
||||
int extra_is_show = intent.getIntExtra("EXTRA_IS_SHOW", 0);
|
||||
int extra_is_show = intent.getIntExtra( "EXTRA_IS_SHOW", 0 );
|
||||
|
||||
//if (extra_is_show == 0) {
|
||||
// mView.getUIController().displayOverview();
|
||||
//} else {
|
||||
// mView.getUIController().recoverLockMode();
|
||||
//}
|
||||
}else if (key_type == 10005){
|
||||
int navi_route_prefer = intent.getIntExtra("NAVI_ROUTE_PREFER", type);
|
||||
} else if ( key_type == 10005 ) {
|
||||
int navi_route_prefer = intent.getIntExtra( "NAVI_ROUTE_PREFER", type );
|
||||
|
||||
|
||||
}
|
||||
@@ -159,13 +151,38 @@ public class MapPresenter extends Presenter<MapView> implements
|
||||
};
|
||||
|
||||
IntentFilter inputFilter = new IntentFilter();
|
||||
inputFilter.addAction(AUTONAVI_STANDARD_BROADCAST_RECV);
|
||||
getContext().registerReceiver(broadcastReceiver, inputFilter);
|
||||
inputFilter.addAction( AUTONAVI_STANDARD_BROADCAST_RECV );
|
||||
getContext().registerReceiver( broadcastReceiver, inputFilter );
|
||||
}
|
||||
|
||||
private void zoomMap( boolean zoomIn ) {
|
||||
boolean isLocked = mMogoMapService.getMapUIController().isCarLocked();
|
||||
MapControlResult result = mView.getUIController().changeZoom( zoomIn );
|
||||
if ( result == MapControlResult.TARGET ) {
|
||||
UiThreadHandler.postDelayed( () -> {
|
||||
if ( zoomIn ) {
|
||||
AIAssist.getInstance( getContext() ).speakTTSVoice( "地图已是最大", VoicePreemptType.PREEMPT_TYPE_NEXT, null );
|
||||
} else {
|
||||
AIAssist.getInstance( getContext() ).speakTTSVoice( "地图已是最小", VoicePreemptType.PREEMPT_TYPE_NEXT, null );
|
||||
}
|
||||
}, 1_000L ); // 避免小智障播放完毕之前播报
|
||||
return;
|
||||
}
|
||||
if ( isLocked ) {
|
||||
// 保持锁车状态
|
||||
UiThreadHandler.postDelayed( () -> {
|
||||
mView.getUIController().setLockZoom( ( ( int ) mMogoMapService.getMapUIController().getZoomLevel() ) );
|
||||
mMogoMapService.getMapUIController().recoverLockMode();//缩放地图会导致锁车发生改变,这里强制锁车
|
||||
}, 1_000 );
|
||||
} else {
|
||||
// 20s后锁车刷新
|
||||
mRefreshStrategyController.restartAutoRefreshAtTime( 20_000 );
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCreate(@NonNull LifecycleOwner owner) {
|
||||
super.onCreate(owner);
|
||||
public void onCreate( @NonNull LifecycleOwner owner ) {
|
||||
super.onCreate( owner );
|
||||
|
||||
IMogoServiceApis apis = ( IMogoServiceApis ) ARouter.getInstance().build( MogoServicePaths.PATH_SERVICE_APIS ).navigation( getContext() );
|
||||
mMogoMapService = apis.getMapServiceApi();
|
||||
@@ -173,104 +190,99 @@ public class MapPresenter extends Presenter<MapView> implements
|
||||
mSearchManager = apis.getSearchManagerApi();
|
||||
mRefreshStrategyController = apis.getRefreshStrategyControllerApi();
|
||||
|
||||
IMogoNavi mogoNavi = mMogoMapService.getNavi(getContext());
|
||||
mogoNavi.setCalculatePathDisplayBounds(new Rect(
|
||||
ResourcesHelper.getDimensionPixelSize(getContext(), R.dimen.module_map_display_overview_left_margin),
|
||||
ResourcesHelper.getDimensionPixelSize(getContext(), R.dimen.module_map_display_overview_top_margin),
|
||||
ResourcesHelper.getDimensionPixelSize(getContext(), R.dimen.module_map_display_overview_right_margin),
|
||||
ResourcesHelper.getDimensionPixelSize(getContext(), R.dimen.module_map_display_overview_bottom_margin)
|
||||
));
|
||||
IMogoNavi mogoNavi = mMogoMapService.getNavi( getContext() );
|
||||
mogoNavi.setCalculatePathDisplayBounds( new Rect(
|
||||
ResourcesHelper.getDimensionPixelSize( getContext(), R.dimen.module_map_display_overview_left_margin ),
|
||||
ResourcesHelper.getDimensionPixelSize( getContext(), R.dimen.module_map_display_overview_top_margin ),
|
||||
ResourcesHelper.getDimensionPixelSize( getContext(), R.dimen.module_map_display_overview_right_margin ),
|
||||
ResourcesHelper.getDimensionPixelSize( getContext(), R.dimen.module_map_display_overview_bottom_margin )
|
||||
) );
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onResume(@NonNull LifecycleOwner owner) {
|
||||
super.onResume(owner);
|
||||
public void onResume( @NonNull LifecycleOwner owner ) {
|
||||
super.onResume( owner );
|
||||
registerVoiceCmd();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onPause(@NonNull LifecycleOwner owner) {
|
||||
super.onPause(owner);
|
||||
public void onPause( @NonNull LifecycleOwner owner ) {
|
||||
super.onPause( owner );
|
||||
unregisterVoiceCmd();
|
||||
}
|
||||
|
||||
private void registerVoiceCmd() {
|
||||
|
||||
for (Map.Entry<String, String[]> entry : VoiceConstants.sVoiceCmds.entrySet()) {
|
||||
AIAssist.getInstance(getContext())
|
||||
.registerUnWakeupCommand(entry.getKey(), entry.getValue(), this);
|
||||
for ( Map.Entry< String, String[] > entry : VoiceConstants.sVoiceCmds.entrySet() ) {
|
||||
AIAssist.getInstance( getContext() )
|
||||
.registerUnWakeupCommand( entry.getKey(), entry.getValue(), this );
|
||||
}
|
||||
|
||||
for (String cmd : VoiceConstants.sCmds) {
|
||||
mMogoIntentManager.registerIntentListener(cmd, this);
|
||||
for ( String cmd : VoiceConstants.sCmds ) {
|
||||
mMogoIntentManager.registerIntentListener( cmd, this );
|
||||
}
|
||||
}
|
||||
|
||||
private void unregisterVoiceCmd() {
|
||||
|
||||
for (Map.Entry<String, String[]> entry : VoiceConstants.sVoiceCmds.entrySet()) {
|
||||
AIAssist.getInstance(getContext()).unregisterUnWakeupCommand(entry.getKey(), this);
|
||||
for ( Map.Entry< String, String[] > entry : VoiceConstants.sVoiceCmds.entrySet() ) {
|
||||
AIAssist.getInstance( getContext() ).unregisterUnWakeupCommand( entry.getKey(), this );
|
||||
}
|
||||
|
||||
for (String cmd : VoiceConstants.sCmds) {
|
||||
mMogoIntentManager.unregisterIntentListener(cmd, this);
|
||||
for ( String cmd : VoiceConstants.sCmds ) {
|
||||
mMogoIntentManager.unregisterIntentListener( cmd, this );
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onIntentReceived(String command, Intent intent) {
|
||||
if (TextUtils.isEmpty(command)) {
|
||||
public void onIntentReceived( String command, Intent intent ) {
|
||||
if ( TextUtils.isEmpty( command ) ) {
|
||||
return;
|
||||
}
|
||||
onCmdSelected(command);
|
||||
onCmdSelected( command );
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCmdSelected(String cmd) {
|
||||
Logger.d(TAG, cmd);
|
||||
switch (cmd) {
|
||||
public void onCmdSelected( String cmd ) {
|
||||
Logger.d( TAG, cmd );
|
||||
switch ( cmd ) {
|
||||
case VoiceConstants.CMD_MAP_TRAFFIC_MODE_UN_WAKEUP:
|
||||
case VoiceConstants.CMD_MAP_TRAFFIC_MODE:
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice("已打开", null);
|
||||
mView.getUIController().setTrafficEnabled(true);
|
||||
AIAssist.getInstance( getContext() ).speakTTSVoice( "已打开", null );
|
||||
mView.getUIController().setTrafficEnabled( true );
|
||||
mSearchManager.showSearch();
|
||||
break;
|
||||
case VoiceConstants.CMD_MAP_UN_TRAFFIC_MODE_UN_WAKEUP:
|
||||
case VoiceConstants.CMD_MAP_UN_TRAFFIC_MODE:
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice("已关闭", null);
|
||||
mView.getUIController().setTrafficEnabled(false);
|
||||
AIAssist.getInstance( getContext() ).speakTTSVoice( "已关闭", null );
|
||||
mView.getUIController().setTrafficEnabled( false );
|
||||
mSearchManager.showMain();
|
||||
break;
|
||||
case VoiceConstants.CMD_MAP_ZOOM_IN_UN_WAKEUP:
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice("已放大", null);
|
||||
case VoiceConstants.CMD_MAP_ZOOM_IN:
|
||||
mView.getUIController().changeZoom(true);
|
||||
zoomMap( true );
|
||||
break;
|
||||
case VoiceConstants.CMD_MAP_ZOOM_OUT_UN_WAKEUP:
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice("已缩小", null);
|
||||
case VoiceConstants.CMD_MAP_ZOOM_OUT:
|
||||
mView.getUIController().changeZoom(false);
|
||||
zoomMap( false );
|
||||
break;
|
||||
case VoiceConstants.CMD_MAP_2D_UN_WAKEUP:
|
||||
case VoiceConstants.CMD_MAP_2D:
|
||||
case VoiceConstants.CMD_MAP_NORTH_UP_MODE_UN_WAKEUP:
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice("已切换", null);
|
||||
case VoiceConstants.CMD_MAP_NORTH_UP_MODE:
|
||||
mView.getUIController().changeMapMode(EnumMapUI.NorthUP_2D);
|
||||
//AIAssist.getInstance(getContext()).speakTTSVoice("已切换", null);
|
||||
|
||||
mView.getUIController().changeMapMode( EnumMapUI.NorthUP_2D );
|
||||
AIAssist.getInstance( getContext() ).speakTTSVoice( "已切换", null );
|
||||
break;
|
||||
case VoiceConstants.CMD_MAP_3D_UN_WAKEUP:
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice("已切换", null);
|
||||
case VoiceConstants.CMD_MAP_3D:
|
||||
mView.getUIController().changeMapMode(EnumMapUI.CarUp_3D);
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice("已切换", null);
|
||||
mView.getUIController().changeMapMode( EnumMapUI.CarUp_3D );
|
||||
AIAssist.getInstance( getContext() ).speakTTSVoice( "已切换", null );
|
||||
|
||||
break;
|
||||
case VoiceConstants.CMD_MAP_DAY_TIME_MODE_UN_WAKEUP:
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice("已切换", null);
|
||||
case VoiceConstants.CMD_MAP_DAY_TIME_MODE:
|
||||
mView.getUIController().changeMapMode(EnumMapUI.Type_Light);
|
||||
mView.getUIController().changeMapMode( EnumMapUI.Type_Light );
|
||||
AIAssist.getInstance( getContext() ).speakTTSVoice( "已切换", null );
|
||||
break;
|
||||
|
||||
//case VoiceConstants.CMD_MAP_GO_COMPANY_UN_WAKEUP:
|
||||
@@ -294,29 +306,29 @@ public class MapPresenter extends Presenter<MapView> implements
|
||||
break;
|
||||
|
||||
case VoiceConstants.CMD_MAP_NIGHT_MODE_UN_WAKEUP:
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice("已切换", null);
|
||||
case VoiceConstants.CMD_MAP_NIGHT_MODE:
|
||||
mView.getUIController().changeMapMode(EnumMapUI.Type_Night);
|
||||
mView.getUIController().changeMapMode( EnumMapUI.Type_Night );
|
||||
AIAssist.getInstance( getContext() ).speakTTSVoice( "已切换", null );
|
||||
break;
|
||||
case VoiceConstants.CMD_MAP_AUTO_LIGHT_NIGHT_MODE_UN_WAKEUP:
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice("已切换", null);
|
||||
case VoiceConstants.CMD_MAP_AUTO_LIGHT_NIGHT_MODE:
|
||||
mView.getUIController().changeMapMode(EnumMapUI.Type_AUTO_LIGHT_Night);
|
||||
mView.getUIController().changeMapMode( EnumMapUI.Type_AUTO_LIGHT_Night );
|
||||
AIAssist.getInstance( getContext() ).speakTTSVoice( "已切换", null );
|
||||
break;
|
||||
case VoiceConstants.CMD_MAP_DISPLAY_OVERVIEW_MODE_UN_WAKEUP:
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice("已切换", null);
|
||||
AIAssist.getInstance( getContext() ).speakTTSVoice( "已切换", null );
|
||||
case VoiceConstants.CMD_MAP_DISPLAY_OVERVIEW_MODE:
|
||||
//mView.getUIController().displayOverview();
|
||||
break;
|
||||
case VoiceConstants.CMD_MAP_CONTINUE_NAVI_MODE_UN_WAKEUP:
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice("已切换", null);
|
||||
case VoiceConstants.CMD_MAP_CONTINUE_NAVI_MODE:
|
||||
mView.getUIController().recoverLockMode();
|
||||
AIAssist.getInstance( getContext() ).speakTTSVoice( "已切换", null );
|
||||
break;
|
||||
case VoiceConstants.CMD_MAP_CAR_UP_MODE_UN_WAKEUP:
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice("已切换", null);
|
||||
case VoiceConstants.CMD_MAP_CAR_UP_MODE:
|
||||
mView.getUIController().changeMapMode(EnumMapUI.CarUp_2D);
|
||||
mView.getUIController().changeMapMode( EnumMapUI.CarUp_2D );
|
||||
AIAssist.getInstance( getContext() ).speakTTSVoice( "已切换", null );
|
||||
break;
|
||||
|
||||
//case VoiceConstants.CMD_MAP_GEO_NEARBY:
|
||||
@@ -328,14 +340,14 @@ public class MapPresenter extends Presenter<MapView> implements
|
||||
case VoiceConstants.CMD_MAP_SPEAK_DRAFT_MODE:
|
||||
case VoiceConstants.CMD_MAP_SPEAK_DRAFT_MODE_UN_WAKEUP:
|
||||
mSearchManager.speakDraft();
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice("已切换", null);
|
||||
AIAssist.getInstance( getContext() ).speakTTSVoice( "已切换", null );
|
||||
|
||||
break;
|
||||
|
||||
case VoiceConstants.CMD_MAP_SPEAK_DETAIL_MODE:
|
||||
case VoiceConstants.CMD_MAP_SPEAK_DETAIL_MODE_UN_WAKEUP:
|
||||
mSearchManager.speakDetail();
|
||||
AIAssist.getInstance(getContext()).speakTTSVoice("已切换", null);
|
||||
AIAssist.getInstance( getContext() ).speakTTSVoice( "已切换", null );
|
||||
|
||||
break;
|
||||
case VoiceConstants.CMD_MAP_SPEAK_REMAIN:
|
||||
@@ -346,22 +358,22 @@ public class MapPresenter extends Presenter<MapView> implements
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCmdAction(String speakText) {
|
||||
public void onCmdAction( String speakText ) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCmdCancel(String speakText) {
|
||||
public void onCmdCancel( String speakText ) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSpeakEnd(String speakText) {
|
||||
public void onSpeakEnd( String speakText ) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSpeakSelectTimeOut(String speakText) {
|
||||
public void onSpeakSelectTimeOut( String speakText ) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user