diff --git a/app/src/main/java/com/mogo/launcher/MogoApplication.java b/app/src/main/java/com/mogo/launcher/MogoApplication.java index 9bf35c4d79..f251be04c3 100644 --- a/app/src/main/java/com/mogo/launcher/MogoApplication.java +++ b/app/src/main/java/com/mogo/launcher/MogoApplication.java @@ -28,7 +28,7 @@ public class MogoApplication extends AbsMogoApplication { DebugConfig.setNetMode( DebugConfig.NET_MODE_QA ); MogoModulePaths.addModule(new MogoModule(OnLineCarConstants.TAG, "CARD_TYPE_ROAD_ONLINECAR")); MogoModulePaths.addModule( new MogoModule( TanluConstants.TAG, "CARD_TYPE_ROAD_CODITION" ) ); - MogoModulePaths.addModule(new MogoModule( CallChatConstant.PROVIDER, CallChatConstant.MODULE_NAME)); +// MogoModulePaths.addModule(new MogoModule( CallChatConstant.PROVIDER, CallChatConstant.MODULE_NAME)); } @Override diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/listener/IMogoHosListenerRegister.java b/libraries/mogo-map-api/src/main/java/com/mogo/map/listener/IMogoHosListenerRegister.java index 9c1717affb..59f78dc16b 100644 --- a/libraries/mogo-map-api/src/main/java/com/mogo/map/listener/IMogoHosListenerRegister.java +++ b/libraries/mogo-map-api/src/main/java/com/mogo/map/listener/IMogoHosListenerRegister.java @@ -1,6 +1,5 @@ package com.mogo.map.listener; -import com.mogo.map.marker.IMogoMarkerClickListener; import com.mogo.map.marker.IMogoMarkerClickListenerRegister; import com.mogo.map.navi.IMogoNaviListenerRegister; diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/ExtensionsFragment.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/ExtensionsFragment.java index 60481bc255..ba5561c1a7 100644 --- a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/ExtensionsFragment.java +++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/ExtensionsFragment.java @@ -10,6 +10,8 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.mogo.commons.mvp.MvpFragment; +import com.mogo.module.extensions.anim.AnimRes; +import com.mogo.module.extensions.anim.JSurfaceView; /** * @author congtaowang @@ -19,7 +21,7 @@ import com.mogo.commons.mvp.MvpFragment; */ public class ExtensionsFragment extends MvpFragment< ExtensionsView, ExtensionsPresenter > implements ExtensionsView { - private View mVoiceIcon; + private JSurfaceView mVoiceIcon; private View mVoiceMsg; private TextView mTime; @@ -66,6 +68,8 @@ public class ExtensionsFragment extends MvpFragment< ExtensionsView, ExtensionsP mMsgContainer = findViewById( R.id.module_ext_id_msg ); mMsgCounter = findViewById( R.id.module_ext_id_msg_counter ); + + mVoiceIcon.setFrames( AnimRes.sRes ); } @NonNull @@ -77,7 +81,18 @@ public class ExtensionsFragment extends MvpFragment< ExtensionsView, ExtensionsP @Override public void onActivityCreated( @Nullable Bundle savedInstanceState ) { super.onActivityCreated( savedInstanceState ); + } + @Override + public void onResume() { + super.onResume(); + mVoiceIcon.startAnim(); + } + + @Override + public void onStop() { + super.onStop(); + mVoiceIcon.stop(); } @Override diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/anim/AnimRes.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/anim/AnimRes.java new file mode 100644 index 0000000000..13628228da --- /dev/null +++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/anim/AnimRes.java @@ -0,0 +1,83 @@ +package com.mogo.module.extensions.anim; + +import com.mogo.module.extensions.R; + +/** + * @author congtaowang + * @since 2020-01-09 + *
+ * 描述 + */ +public class AnimRes { + + public static final int sRes[] = { + R.drawable.mogo_tts_icon_00000, + R.drawable.mogo_tts_icon_00001, + R.drawable.mogo_tts_icon_00002, + R.drawable.mogo_tts_icon_00003, + R.drawable.mogo_tts_icon_00004, + R.drawable.mogo_tts_icon_00005, + R.drawable.mogo_tts_icon_00006, + R.drawable.mogo_tts_icon_00007, + R.drawable.mogo_tts_icon_00008, + R.drawable.mogo_tts_icon_00009, + R.drawable.mogo_tts_icon_00010, + R.drawable.mogo_tts_icon_00011, + R.drawable.mogo_tts_icon_00012, + R.drawable.mogo_tts_icon_00013, + R.drawable.mogo_tts_icon_00014, + R.drawable.mogo_tts_icon_00015, + R.drawable.mogo_tts_icon_00016, + R.drawable.mogo_tts_icon_00017, + R.drawable.mogo_tts_icon_00018, + R.drawable.mogo_tts_icon_00019, + R.drawable.mogo_tts_icon_00020, + R.drawable.mogo_tts_icon_00021, + R.drawable.mogo_tts_icon_00022, + R.drawable.mogo_tts_icon_00023, + R.drawable.mogo_tts_icon_00024, + R.drawable.mogo_tts_icon_00025, + R.drawable.mogo_tts_icon_00026, + R.drawable.mogo_tts_icon_00027, + R.drawable.mogo_tts_icon_00028, + R.drawable.mogo_tts_icon_00029, + R.drawable.mogo_tts_icon_00030, + R.drawable.mogo_tts_icon_00031, + R.drawable.mogo_tts_icon_00032, + R.drawable.mogo_tts_icon_00033, + R.drawable.mogo_tts_icon_00034, + R.drawable.mogo_tts_icon_00035, + R.drawable.mogo_tts_icon_00036, + R.drawable.mogo_tts_icon_00037, + R.drawable.mogo_tts_icon_00038, + R.drawable.mogo_tts_icon_00039, + R.drawable.mogo_tts_icon_00040, + R.drawable.mogo_tts_icon_00041, + R.drawable.mogo_tts_icon_00042, + R.drawable.mogo_tts_icon_00043, + R.drawable.mogo_tts_icon_00044, + R.drawable.mogo_tts_icon_00045, + R.drawable.mogo_tts_icon_00046, + R.drawable.mogo_tts_icon_00047, + R.drawable.mogo_tts_icon_00048, + R.drawable.mogo_tts_icon_00049, + R.drawable.mogo_tts_icon_00050, + R.drawable.mogo_tts_icon_00051, + R.drawable.mogo_tts_icon_00052, + R.drawable.mogo_tts_icon_00053, + R.drawable.mogo_tts_icon_00054, + R.drawable.mogo_tts_icon_00055, + R.drawable.mogo_tts_icon_00056, + R.drawable.mogo_tts_icon_00057, + R.drawable.mogo_tts_icon_00058, + R.drawable.mogo_tts_icon_00059, + R.drawable.mogo_tts_icon_00060, + R.drawable.mogo_tts_icon_00061, + R.drawable.mogo_tts_icon_00062, + R.drawable.mogo_tts_icon_00063, + R.drawable.mogo_tts_icon_00064, + R.drawable.mogo_tts_icon_00065, + R.drawable.mogo_tts_icon_00066, + R.drawable.mogo_tts_icon_00067 + }; +} diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/anim/JSurfaceView.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/anim/JSurfaceView.java new file mode 100644 index 0000000000..6d4c941c8e --- /dev/null +++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/anim/JSurfaceView.java @@ -0,0 +1,127 @@ +package com.mogo.module.extensions.anim; + +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.Canvas; +import android.graphics.Color; +import android.graphics.Paint; +import android.graphics.PixelFormat; +import android.graphics.PorterDuff; +import android.graphics.Rect; +import android.util.AttributeSet; +import android.view.SurfaceHolder; +import android.view.SurfaceView; + +import com.mogo.utils.ThreadPoolService; + +public class JSurfaceView extends SurfaceView implements Runnable, SurfaceHolder.Callback { + + private SurfaceHolder mHolder; + + /** + * 动画是否执行中 + */ + private boolean bRunning = false; + /** + * 当前执行的第几帧 + */ + private int mCurrentPos; + /** + * 动画集合 + */ + private int[] mFrames; + + public JSurfaceView( Context context ) { + super( context ); + init(); + } + + public JSurfaceView( Context context, AttributeSet attrs ) { + super( context, attrs ); + init(); + } + + public JSurfaceView( Context context, AttributeSet attrs, int defStyleAttr ) { + super( context, attrs, defStyleAttr ); + init(); + } + + private void init() { + mHolder = getHolder(); + mHolder.addCallback( this ); + setZOrderOnTop( false ); + mHolder.setFormat( PixelFormat.TRANSLUCENT ); + } + + public void setFrames( int[] frames ) { + mFrames = frames; + } + + public void startAnim() { + if ( bRunning ) { + return; + } + ThreadPoolService.execute( this ); + bRunning = true; + } + + public void stop() { + bRunning = false; + } + + @Override + public void run() { + while ( bRunning ) { + drawBitmap(); + mCurrentPos++; + try { + Thread.sleep( 100 ); + } catch ( InterruptedException e ) { + e.printStackTrace(); + } + } + } + + + private void drawBitmap() { + //获取画布并锁定 + Canvas mCanvas = mHolder.lockCanvas(); + if ( mCanvas == null ) { + return; + } + //绘制透明色 + mCanvas.drawColor( Color.TRANSPARENT, PorterDuff.Mode.CLEAR ); + Bitmap mBitmap = BitmapFactory.decodeResource( getResources(), mFrames[mCurrentPos % mFrames.length] ); + + Paint paint = new Paint(); + Rect mSrcRect = new Rect( 0, + 0, + mBitmap.getWidth(), + mBitmap.getHeight() ); // 图片绘制 + Rect mDestRect = new Rect( 0, + 0, + getWidth(), + getHeight() );// 图片绘制位置 + + mCanvas.drawBitmap( mBitmap, mSrcRect, mDestRect, paint ); + //解锁画布,并展示bitmap到surface + mHolder.unlockCanvasAndPost( mCanvas ); + mBitmap.recycle(); + } + + @Override + public void surfaceCreated( SurfaceHolder holder ) { + + } + + @Override + public void surfaceChanged( SurfaceHolder holder, int format, int width, int height ) { + + } + + @Override + public void surfaceDestroyed( SurfaceHolder holder ) { + + } +} \ No newline at end of file diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java index 7ac2b024e6..69cedcc90d 100644 --- a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java +++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/entrance/EntranceFragment.java @@ -13,8 +13,6 @@ import com.mogo.map.MogoLatLng; import com.mogo.map.location.IMogoLocationClient; import com.mogo.map.location.MogoLocation; import com.mogo.map.navi.IMogoNavi; -import com.mogo.map.navi.IMogoNaviListener; -import com.mogo.map.navi.MogoNaviInfo; import com.mogo.map.uicontroller.IMogoMapUIController; import com.mogo.module.common.MogoModulePaths; import com.mogo.module.extensions.R; @@ -31,7 +29,7 @@ import com.mogo.service.module.IMogoModuleProvider; *
* 描述
*/
-public class EntranceFragment extends MvpFragment< EntranceView, EntrancePresenter > implements EntranceView, IMogoNaviListener {
+public class EntranceFragment extends MvpFragment< EntranceView, EntrancePresenter > implements EntranceView {
private View mSearch;
@@ -126,64 +124,4 @@ public class EntranceFragment extends MvpFragment< EntranceView, EntrancePresent
mMogoLocationClient = mService.getLocationClient( getContext() );
mMogoNavi = mService.getNavi( getContext() );
}
-
-
- @Override
- public void onInitNaviFailure() {
- if ( mSearchProvider != null && mSearchProvider.getNaviListener() != null ) {
- mSearchProvider.getNaviListener().onInitNaviFailure();
- }
- }
-
- @Override
- public void onInitNaviSuccess() {
- if ( mSearchProvider != null && mSearchProvider.getNaviListener() != null ) {
- mSearchProvider.getNaviListener().onInitNaviSuccess();
- }
- }
-
- @Override
- public void onNaviInfoUpdate( MogoNaviInfo naviinfo ) {
- if ( naviinfo == null ) {
- return;
- }
- mNaviInfo.notifyChanged( naviinfo );
- if ( mSearchProvider != null && mSearchProvider.getNaviListener() != null ) {
- mSearchProvider.getNaviListener().onNaviInfoUpdate( naviinfo );
- }
- }
-
- @Override
- public void onStartNavi() {
- mCommonAddress.setVisibility( View.GONE );
- mNaviInfo.setVisibility( View.VISIBLE );
- mExitNavi.setVisibility( View.VISIBLE );
- if ( mSearchProvider != null && mSearchProvider.getNaviListener() != null ) {
- mSearchProvider.getNaviListener().onStartNavi();
- }
- }
-
- @Override
- public void onStopNavi() {
- mCommonAddress.setVisibility( View.VISIBLE );
- mNaviInfo.setVisibility( View.GONE );
- mExitNavi.setVisibility( View.GONE );
- if ( mSearchProvider != null && mSearchProvider.getNaviListener() != null ) {
- mSearchProvider.getNaviListener().onStopNavi();
- }
- }
-
- @Override
- public void onCalculateSuccess() {
- if ( mSearchProvider != null && mSearchProvider.getNaviListener() != null ) {
- mSearchProvider.getNaviListener().onCalculateSuccess();
- }
- }
-
- @Override
- public void onoCalculateFailed() {
- if ( mSearchProvider != null && mSearchProvider.getNaviListener() != null ) {
- mSearchProvider.getNaviListener().onoCalculateFailed();
- }
- }
}
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00000.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00000.png
new file mode 100644
index 0000000000..cf76dec7ee
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00000.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00001.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00001.png
new file mode 100644
index 0000000000..759b133363
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00001.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00002.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00002.png
new file mode 100644
index 0000000000..2acc31fd75
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00002.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00003.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00003.png
new file mode 100644
index 0000000000..fcd2de6ab0
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00003.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00004.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00004.png
new file mode 100644
index 0000000000..0185747f28
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00004.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00005.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00005.png
new file mode 100644
index 0000000000..133e230955
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00005.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00006.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00006.png
new file mode 100644
index 0000000000..01a2614deb
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00006.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00007.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00007.png
new file mode 100644
index 0000000000..21b59f46d2
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00007.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00008.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00008.png
new file mode 100644
index 0000000000..c0fb4687d6
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00008.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00009.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00009.png
new file mode 100644
index 0000000000..636d45d153
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00009.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00010.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00010.png
new file mode 100644
index 0000000000..4c84c50a6a
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00010.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00011.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00011.png
new file mode 100644
index 0000000000..27c7cd20ca
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00011.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00012.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00012.png
new file mode 100644
index 0000000000..a7ccf5f35f
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00012.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00013.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00013.png
new file mode 100644
index 0000000000..a2d6aec518
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00013.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00014.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00014.png
new file mode 100644
index 0000000000..65ead253fb
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00014.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00015.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00015.png
new file mode 100644
index 0000000000..4a565bdcb2
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00015.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00016.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00016.png
new file mode 100644
index 0000000000..a752fa5f60
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00016.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00017.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00017.png
new file mode 100644
index 0000000000..0c089db1a0
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00017.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00018.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00018.png
new file mode 100644
index 0000000000..496de625bd
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00018.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00019.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00019.png
new file mode 100644
index 0000000000..a805ad75aa
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00019.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00020.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00020.png
new file mode 100644
index 0000000000..656ab722d4
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00020.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00021.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00021.png
new file mode 100644
index 0000000000..73e02f07b1
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00021.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00022.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00022.png
new file mode 100644
index 0000000000..04fd01e5a9
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00022.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00023.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00023.png
new file mode 100644
index 0000000000..2b42ab31ec
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00023.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00024.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00024.png
new file mode 100644
index 0000000000..f25ca2c8e8
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00024.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00025.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00025.png
new file mode 100644
index 0000000000..2cb7d768da
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00025.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00026.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00026.png
new file mode 100644
index 0000000000..a30ed348b5
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00026.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00027.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00027.png
new file mode 100644
index 0000000000..37977fdbcd
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00027.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00028.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00028.png
new file mode 100644
index 0000000000..c461373d86
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00028.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00029.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00029.png
new file mode 100644
index 0000000000..6eb46799ee
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00029.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00030.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00030.png
new file mode 100644
index 0000000000..c874c287ae
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00030.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00031.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00031.png
new file mode 100644
index 0000000000..fd1ee80c15
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00031.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00032.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00032.png
new file mode 100644
index 0000000000..f89fdb368d
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00032.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00033.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00033.png
new file mode 100644
index 0000000000..d199137e5b
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00033.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00034.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00034.png
new file mode 100644
index 0000000000..5e612da15b
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00034.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00035.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00035.png
new file mode 100644
index 0000000000..bf394dbcd3
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00035.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00036.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00036.png
new file mode 100644
index 0000000000..ca5ad37df8
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00036.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00037.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00037.png
new file mode 100644
index 0000000000..76bc2391e8
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00037.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00038.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00038.png
new file mode 100644
index 0000000000..d9a2049f96
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00038.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00039.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00039.png
new file mode 100644
index 0000000000..3a46da466e
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00039.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00040.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00040.png
new file mode 100644
index 0000000000..f89b0d748c
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00040.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00041.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00041.png
new file mode 100644
index 0000000000..41ba5ebe7b
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00041.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00042.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00042.png
new file mode 100644
index 0000000000..a99b80df64
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00042.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00043.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00043.png
new file mode 100644
index 0000000000..75cbaec133
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00043.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00044.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00044.png
new file mode 100644
index 0000000000..95caadf725
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00044.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00045.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00045.png
new file mode 100644
index 0000000000..935cb08383
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00045.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00046.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00046.png
new file mode 100644
index 0000000000..54ad3719dc
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00046.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00047.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00047.png
new file mode 100644
index 0000000000..e7c4c6dd7d
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00047.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00048.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00048.png
new file mode 100644
index 0000000000..358b8b442b
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00048.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00049.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00049.png
new file mode 100644
index 0000000000..83c7946a1d
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00049.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00050.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00050.png
new file mode 100644
index 0000000000..ff7a6cfbaa
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00050.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00051.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00051.png
new file mode 100644
index 0000000000..52c81af36b
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00051.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00052.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00052.png
new file mode 100644
index 0000000000..6c22bb0827
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00052.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00053.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00053.png
new file mode 100644
index 0000000000..df233a72ab
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00053.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00054.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00054.png
new file mode 100644
index 0000000000..ee9eaf6588
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00054.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00055.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00055.png
new file mode 100644
index 0000000000..f3f6bfdfe3
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00055.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00056.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00056.png
new file mode 100644
index 0000000000..a4460ef16c
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00056.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00057.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00057.png
new file mode 100644
index 0000000000..23e1fa00b6
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00057.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00058.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00058.png
new file mode 100644
index 0000000000..1331514201
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00058.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00059.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00059.png
new file mode 100644
index 0000000000..a897f3750b
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00059.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00060.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00060.png
new file mode 100644
index 0000000000..ab92e11b21
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00060.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00061.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00061.png
new file mode 100644
index 0000000000..aa8a1a7628
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00061.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00062.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00062.png
new file mode 100644
index 0000000000..0aad924d12
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00062.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00063.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00063.png
new file mode 100644
index 0000000000..a166e7fe19
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00063.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00064.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00064.png
new file mode 100644
index 0000000000..46a47ead66
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00064.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00065.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00065.png
new file mode 100644
index 0000000000..52c9430792
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00065.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00066.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00066.png
new file mode 100644
index 0000000000..04d556923b
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00066.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00067.png b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00067.png
new file mode 100644
index 0000000000..b7dab9a929
Binary files /dev/null and b/modules/mogo-module-extensions/src/main/res/drawable-xhdpi/mogo_tts_icon_00067.png differ
diff --git a/modules/mogo-module-extensions/src/main/res/drawable/module_ext_anim_frame_voice.xml b/modules/mogo-module-extensions/src/main/res/drawable/module_ext_anim_frame_voice.xml
deleted file mode 100644
index 48d4c76465..0000000000
--- a/modules/mogo-module-extensions/src/main/res/drawable/module_ext_anim_frame_voice.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
+ * 描述
+ */
+@Route( path = MogoServicePaths.PATH_REGISTER_CENTER )
+public class MogoRegisterCenter implements IMogoRegisterCenter {
+
+ @Override
+ public void registerMogoModuleLifecycle( String moduleName, IMogoModuleLifecycle lifecycle ) {
+ MogoRegisterCenterHandler.getInstance().registerMogoModuleLifecycle( moduleName, lifecycle );
+ }
+
+ @Override
+ public void unregisterMogoModuleLifecycle( String moduleName ) {
+ MogoRegisterCenterHandler.getInstance().unregisterMogoModuleLifecycle( moduleName );
+ }
+
+ @Override
+ public void registerMogoMapListener( String moduleName, IMogoMapListener listener ) {
+ MogoRegisterCenterHandler.getInstance().registerMogoMapListener( moduleName, listener );
+ }
+
+ @Override
+ public void unregisterMogoMapListener( String moduleName ) {
+ MogoRegisterCenterHandler.getInstance().unregisterMogoMapListener( moduleName );
+ }
+
+ @Override
+ public void registerMogoNaviListener( String moduleName, IMogoNaviListener listener ) {
+ MogoRegisterCenterHandler.getInstance().registerMogoNaviListener( moduleName, listener );
+ }
+
+ @Override
+ public void unregisterMogoNaviListener( String moduleName ) {
+ MogoRegisterCenterHandler.getInstance().unregisterMogoNaviListener( moduleName );
+ }
+
+ @Override
+ public void registerMogoLocationListener( String moduleName, IMogoLocationListener listener ) {
+ MogoRegisterCenterHandler.getInstance().registerMogoLocationListener( moduleName, listener );
+ }
+
+ @Override
+ public void unregisterMogoLocationListener( String moduleName ) {
+ MogoRegisterCenterHandler.getInstance().unregisterMogoLocationListener( moduleName );
+ }
+
+ @Override
+ public void registerMogoMarkerClickListener( String moduleName, IMogoMarkerClickListener listener ) {
+ MogoRegisterCenterHandler.getInstance().registerMogoMarkerClickListener( moduleName, listener );
+ }
+
+ @Override
+ public void unregisterMogoMarkerClickListener( String moduleName ) {
+ MogoRegisterCenterHandler.getInstance().unregisterMogoMarkerClickListener( moduleName );
+ }
+
+ @Override
+ public void init( Context context ) {
+
+ }
+}
diff --git a/modules/mogo-module-main/src/main/java/com/mogo/module/main/registercenter/MogoRegisterCenterHandler.java b/modules/mogo-module-main/src/main/java/com/mogo/module/main/registercenter/MogoRegisterCenterHandler.java
new file mode 100644
index 0000000000..36323552a5
--- /dev/null
+++ b/modules/mogo-module-main/src/main/java/com/mogo/module/main/registercenter/MogoRegisterCenterHandler.java
@@ -0,0 +1,148 @@
+package com.mogo.module.main.registercenter;
+
+import android.content.Context;
+
+import com.mogo.map.listener.IMogoMapListener;
+import com.mogo.map.location.IMogoLocationListener;
+import com.mogo.map.marker.IMogoMarkerClickListener;
+import com.mogo.map.navi.IMogoNaviListener;
+import com.mogo.service.module.IMogoModuleLifecycle;
+import com.mogo.service.module.IMogoRegisterCenter;
+
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+
+/**
+ * @author congtaowang
+ * @since 2020-01-09
+ *
+ * 描述
+ */
+public class MogoRegisterCenterHandler implements IMogoRegisterCenter {
+
+ private static volatile MogoRegisterCenterHandler sInstance;
+ private Context mContext;
+
+ private Map< String, IMogoModuleLifecycle > mLifecycle = new HashMap<>();
+ private Map< String, IMogoMapListener > mMap = new HashMap<>();
+ private Map< String, IMogoNaviListener > mNavi = new HashMap<>();
+ private Map< String, IMogoLocationListener > mLocation = new HashMap<>();
+ private Map< String, IMogoMarkerClickListener > mMarker = new HashMap<>();
+
+ private MogoRegisterCenterHandler() {
+ }
+
+ public static MogoRegisterCenterHandler getInstance() {
+ if ( sInstance == null ) {
+ synchronized ( MogoRegisterCenterHandler.class ) {
+ if ( sInstance == null ) {
+ sInstance = new MogoRegisterCenterHandler();
+ }
+ }
+ }
+ return sInstance;
+ }
+
+ public synchronized void release() {
+ sInstance = null;
+ }
+
+
+ @Override
+ public void registerMogoModuleLifecycle( String tag, IMogoModuleLifecycle lifecycle ) {
+ mLifecycle.put( tag, lifecycle );
+ }
+
+ @Override
+ public void unregisterMogoModuleLifecycle( String tag ) {
+ mLifecycle.remove( tag );
+ }
+
+ @Override
+ public void registerMogoMapListener( String tag, IMogoMapListener listener ) {
+ mMap.put( tag, listener );
+ }
+
+ @Override
+ public void unregisterMogoMapListener( String tag ) {
+ mMap.remove( tag );
+ }
+
+ @Override
+ public void registerMogoNaviListener( String tag, IMogoNaviListener listener ) {
+ mNavi.put( tag, listener );
+ }
+
+ @Override
+ public void unregisterMogoNaviListener( String tag ) {
+ mNavi.remove( tag );
+ }
+
+ @Override
+ public void registerMogoLocationListener( String tag, IMogoLocationListener listener ) {
+ mLocation.put( tag, listener );
+ }
+
+ @Override
+ public void unregisterMogoLocationListener( String tag ) {
+ mLocation.remove( tag );
+ }
+
+ @Override
+ public void registerMogoMarkerClickListener( String tag, IMogoMarkerClickListener listener ) {
+ mMarker.put( tag, listener );
+ }
+
+ @Override
+ public void unregisterMogoMarkerClickListener( String tag ) {
+ mMarker.remove( tag );
+ }
+
+ @Override
+ public void init( Context context ) {
+ if ( mContext == null && context != null ) {
+ mContext = context.getApplicationContext();
+ }
+ }
+
+ public IMogoModuleLifecycle getLifecycleListener( String tag ) {
+ return mLifecycle.get( tag );
+ }
+
+ public IMogoMapListener getMapListener( String tag ) {
+ return mMap.get( tag );
+ }
+
+ public IMogoNaviListener getNaviListener( String tag ) {
+ return mNavi.get( tag );
+ }
+
+ public IMogoLocationListener getLocationListener( String tag ) {
+ return mLocation.get( tag );
+ }
+
+ public IMogoMarkerClickListener getMarkerListener( String tag ) {
+ return mMarker.get( tag );
+ }
+
+ public Iterator< IMogoModuleLifecycle > getLifecycleListeners() {
+ return mLifecycle.values().iterator();
+ }
+
+ public Iterator< IMogoMapListener > getMapListeners() {
+ return mMap.values().iterator();
+ }
+
+ public Iterator< IMogoNaviListener > getNaviListeners() {
+ return mNavi.values().iterator();
+ }
+
+ public Iterator< IMogoLocationListener > getLocationListeners() {
+ return mLocation.values().iterator();
+ }
+
+ public Iterator< IMogoMarkerClickListener > getMarkerListeners() {
+ return mMarker.values().iterator();
+ }
+}
diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MarkerServiceHandler.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MarkerServiceHandler.java
index 70f0e26c1e..5a7dd2cebe 100644
--- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MarkerServiceHandler.java
+++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MarkerServiceHandler.java
@@ -16,6 +16,7 @@ import com.mogo.module.service.entity.MarkerLocation;
import com.mogo.module.service.entity.MarkerOnlineCar;
import com.mogo.module.service.entity.MarkerResponse;
import com.mogo.module.service.entity.MarkerShareMusic;
+import com.mogo.module.service.marker.MapMarkerInfoView;
import com.mogo.module.service.marker.MapMarkerView;
import com.mogo.module.service.marker.MarkerInfoWindowAdapter;
import com.mogo.service.MogoServicePaths;
@@ -26,7 +27,6 @@ import com.mogo.service.map.IMogoMapService;
import com.mogo.utils.TipToast;
import com.mogo.utils.logger.Logger;
-import java.util.ArrayList;
import java.util.List;
import java.util.Random;
@@ -76,55 +76,7 @@ public class MarkerServiceHandler {
@Override
public void onMsgReceived(MarkerResponse response) {
Logger.e(TAG, "===" + response);
-
- getMarkerManager().removeMarkers();
-
- // 解析不同的Marker类型,然后对应的进行绘制
- if (response != null && response.getResult() != null) {
- MarkerCardResult markerCardResult = response.getResult();
-
- List
+ * 监听注册中心
+ */
+public interface IMogoRegisterCenter extends IProvider {
+
+ /**
+ * 注册模块生命周期函数
+ *
+ * @param tag
+ * @param lifecycle
+ */
+ void registerMogoModuleLifecycle( String tag, IMogoModuleLifecycle lifecycle );
+
+ /**
+ * 注销模块生命周期函数
+ *
+ * @param tag
+ */
+ void unregisterMogoModuleLifecycle( String tag );
+
+ /**
+ * 注册地图监听函数
+ *
+ * @param tag
+ * @param listener
+ * @return
+ */
+ void registerMogoMapListener( String tag, IMogoMapListener listener );
+
+ /**
+ * 注销地图监听函数
+ *
+ * @param tag
+ */
+ void unregisterMogoMapListener( String tag );
+
+ /**
+ * 注册导航监听函数
+ *
+ * @param tag
+ * @param listener
+ * @return
+ */
+ void registerMogoNaviListener( String tag, IMogoNaviListener listener );
+
+ /**
+ * 注销导航监听函数
+ *
+ * @param tag
+ */
+ void unregisterMogoNaviListener( String tag );
+
+ /**
+ * 注册定位监听函数
+ *
+ * @param tag
+ * @param listener
+ * @return
+ */
+ void registerMogoLocationListener( String tag, IMogoLocationListener listener );
+
+ /**
+ * 注销定位监听函数
+ *
+ * @param tag
+ */
+ void unregisterMogoLocationListener( String tag );
+
+ /**
+ * 注册marker点击监听函数
+ *
+ * @param tag
+ * @param listener
+ * @return
+ */
+ void registerMogoMarkerClickListener( String tag, IMogoMarkerClickListener listener );
+
+ /**
+ * 注销定位监听函数
+ *
+ * @param tag
+ */
+ void unregisterMogoMarkerClickListener( String tag );
+
+}