Merge remote-tracking branch 'origin/feature/v1.0.0' into feature/v1.0.0
# Conflicts: # app/src/main/java/com/mogo/launcher/MogoApplication.java
This commit is contained in:
@@ -2,10 +2,12 @@ package com.mogo.module.service;
|
||||
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.IntentFilter;
|
||||
import android.os.Bundle;
|
||||
import android.os.Handler;
|
||||
import android.os.Looper;
|
||||
import android.os.Message;
|
||||
import android.text.TextUtils;
|
||||
import android.view.MotionEvent;
|
||||
import android.view.View;
|
||||
|
||||
@@ -25,8 +27,13 @@ import com.mogo.map.navi.IMogoNaviListener;
|
||||
import com.mogo.map.navi.MogoNaviInfo;
|
||||
import com.mogo.map.uicontroller.EnumMapUI;
|
||||
import com.mogo.map.uicontroller.IMogoMapUIController;
|
||||
import com.mogo.module.common.MogoModule;
|
||||
import com.mogo.module.common.MogoModulePaths;
|
||||
import com.mogo.module.service.network.RefreshCallback;
|
||||
import com.mogo.module.service.network.RefreshModel;
|
||||
import com.mogo.module.service.receiver.AIAssistReceiver;
|
||||
import com.mogo.module.service.refresh.AutoRefreshStrategy;
|
||||
import com.mogo.module.service.refresh.CustomRefreshStrategy;
|
||||
import com.mogo.service.MogoServicePaths;
|
||||
import com.mogo.service.map.IMogoMapService;
|
||||
import com.mogo.service.module.IMogoModuleLifecycle;
|
||||
@@ -37,6 +44,8 @@ import com.mogo.service.statusmanager.IMogoStatusManager;
|
||||
import com.mogo.service.statusmanager.StatusDescriptor;
|
||||
import com.mogo.utils.logger.Logger;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author congtaowang
|
||||
* @since 2020-01-03
|
||||
@@ -71,6 +80,8 @@ public class MogoServiceProvider implements IMogoModuleProvider,
|
||||
*/
|
||||
boolean mIsVertical = false;
|
||||
|
||||
private AIAssistReceiver mAIAssistReceiver;
|
||||
|
||||
/**
|
||||
* 手动刷新策略
|
||||
*/
|
||||
@@ -208,6 +219,31 @@ public class MogoServiceProvider implements IMogoModuleProvider,
|
||||
|
||||
//TODO 初始化地图地图绘制大而全的Marker
|
||||
MarkerServiceHandler.init( mContext );
|
||||
registerAIReceiver( context );
|
||||
}
|
||||
|
||||
private void registerAIReceiver( Context context ) {
|
||||
if ( context == null ) {
|
||||
return;
|
||||
}
|
||||
List< MogoModule > modules = MogoModulePaths.getModules();
|
||||
if ( modules.isEmpty() || modules == null ) {
|
||||
return;
|
||||
}
|
||||
mAIAssistReceiver = new AIAssistReceiver( context );
|
||||
IntentFilter filter = new IntentFilter();
|
||||
for ( MogoModule module : modules ) {
|
||||
String action = module.getVoiceAction();
|
||||
if ( !TextUtils.isEmpty( action ) ) {
|
||||
filter.addAction( action );
|
||||
}
|
||||
}
|
||||
try {
|
||||
context.getApplicationContext().registerReceiver( mAIAssistReceiver, filter );
|
||||
Logger.i( TAG, "register voice receiver." );
|
||||
} catch ( Exception e ) {
|
||||
Logger.e( TAG, e, "error. " );
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -331,7 +367,6 @@ public class MogoServiceProvider implements IMogoModuleProvider,
|
||||
mLastCustomRefreshCenterLocation = latLng;
|
||||
}
|
||||
}
|
||||
Logger.d( TAG, "current map status: %s, zoom = %f, tilt = %f, bearing = %f", latLng, zoom, tilt, bearing );
|
||||
}
|
||||
|
||||
private int getQueryRadius() {
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
package com.mogo.module.service.receiver;
|
||||
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.text.TextUtils;
|
||||
|
||||
import com.alibaba.android.arouter.launcher.ARouter;
|
||||
import com.mogo.service.MogoServicePaths;
|
||||
import com.mogo.service.voice.IMogoVoiceManager;
|
||||
import com.mogo.utils.logger.Logger;
|
||||
|
||||
/**
|
||||
* @author congtaowang
|
||||
* @since 2019-10-03
|
||||
* <p>
|
||||
* 语音助手广播接收者
|
||||
*/
|
||||
public class AIAssistReceiver extends BroadcastReceiver {
|
||||
|
||||
private static final String TAG = "AIAssistReceiver";
|
||||
|
||||
|
||||
private IMogoVoiceManager mMogoVoiceManager;
|
||||
|
||||
public AIAssistReceiver( Context context ) {
|
||||
mMogoVoiceManager = ( IMogoVoiceManager ) ARouter.getInstance().build( MogoServicePaths.PATH_VOICE_MANAGER ).navigation( context );
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onReceive( Context context, Intent intent ) {
|
||||
Logger.i( TAG, "receive ai assist intent" );
|
||||
final String action = intent.getAction();
|
||||
mMogoVoiceManager.invoke( action, intent );
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.mogo.module.service;
|
||||
package com.mogo.module.service.refresh;
|
||||
|
||||
/**
|
||||
* @author congtaowang
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.mogo.module.service;
|
||||
package com.mogo.module.service.refresh;
|
||||
|
||||
/**
|
||||
* @author congtaowang
|
||||
Reference in New Issue
Block a user