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/app/src/main/java/com/mogo/launcher/MogoApplication.java b/app/src/main/java/com/mogo/launcher/MogoApplication.java
index 9b77e43dc8..7ad99d1205 100644
--- a/app/src/main/java/com/mogo/launcher/MogoApplication.java
+++ b/app/src/main/java/com/mogo/launcher/MogoApplication.java
@@ -20,6 +20,8 @@ import com.mogo.module.tanlu.constant.TanluConstants;
import com.mogo.module.v2x.V2XConst;
import com.mogo.service.MogoServicePaths;
import com.mogo.service.connection.IMogoSocketManager;
+import com.mogo.utils.logger.LogLevel;
+import com.mogo.utils.logger.Logger;
//import com.mogo.module.onlinecar.OnLineCarConstants;
@@ -40,6 +42,8 @@ public class MogoApplication extends AbsMogoApplication {
//设置debug模式,日志不上传
crashSystem.setDebug(BuildConfig.DEBUG);
+ Logger.init( BuildConfig.DEBUG ? LogLevel.DEBUG : LogLevel.OFF );
+
// MogoModulePaths.addModule( new MogoModule( DemoConstants.TAG, "CARD_DEMO" ) );
// MogoModulePaths.addModule( new MogoModule( Demo2Constants.TAG, "CARD_DEMO2" ) );
DebugConfig.setNetMode(BuildConfig.NET_ENV);
diff --git a/foudations/mogo-utils/src/main/java/com/mogo/utils/storage/SharedPrefsMgr.java b/foudations/mogo-utils/src/main/java/com/mogo/utils/storage/SharedPrefsMgr.java
index 3acfd14fa3..7dfc30da3d 100644
--- a/foudations/mogo-utils/src/main/java/com/mogo/utils/storage/SharedPrefsMgr.java
+++ b/foudations/mogo-utils/src/main/java/com/mogo/utils/storage/SharedPrefsMgr.java
@@ -5,6 +5,8 @@ import android.content.SharedPreferences;
import androidx.annotation.NonNull;
+import java.util.Set;
+
public class SharedPrefsMgr {
private static final String File_Name = "app_shared_pref";
@@ -128,4 +130,17 @@ public class SharedPrefsMgr {
}
}
+ public void putStringSet( String key, Set< String > values ) {
+ try {
+ SharedPreferences.Editor editor = sSharedPrefs.edit();
+ editor.putStringSet( key, values );
+ editor.apply();
+ } catch ( Exception e ) {
+ }
+ }
+
+ public Set getStringSet( String key ) {
+ return sSharedPrefs.getStringSet( key, null );
+ }
+
}
\ No newline at end of file
diff --git a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/AMapNaviViewWrapper.java b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/AMapNaviViewWrapper.java
index a21558e292..372ad92698 100644
--- a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/AMapNaviViewWrapper.java
+++ b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/AMapNaviViewWrapper.java
@@ -118,7 +118,7 @@ public class AMapNaviViewWrapper implements IMogoMapView,
// 设置是否显示道路信息view
options.setLaneInfoShow( false );
// 设置是否自动改变缩放等级
- options.setAutoChangeZoom( false );
+ options.setAutoChangeZoom( true );
// 设置是否自动全览模式,即在算路成功后自动进入全览模式
options.setAutoDisplayOverview( false );
// 设置路线转向箭头隐藏和显示
diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerUserInfo.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerUserInfo.java
index 2ee2a01ab2..e13d18d782 100644
--- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerUserInfo.java
+++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/entity/MarkerUserInfo.java
@@ -14,64 +14,77 @@ public class MarkerUserInfo implements Serializable {
private String userName;//用户昵称
private String userHead;//用户头像
private String gender;//gender": "男|女|无(也可以0|1|2根据实际库存返回即可)
- private int age;// 年龄段,可以为空,与车聊聊一致
+ private Integer age;// 年龄段,可以为空,与车聊聊一致
- public void setAge(int age) {
+ public void setAge(Integer age) {
this.age = age;
}
public int getAgeNumber() {
- return age;
+ if (age != null) {
+ return age;
+ }
+ return -1;
}
public String getAge() {
- Calendar cal = Calendar.getInstance();
- int year = cal.get(Calendar.YEAR);
+ try {
+ if (getAgeNumber() >= 0) {
- //2020-30=1990
- double ageDiffer = year - age;
- String ageStr = "" + ageDiffer;
- char[] ageChars = ageStr.toCharArray();
+ Calendar cal = Calendar.getInstance();
+ int year = cal.get(Calendar.YEAR);
- //1990
- char ageChar = ageChars[2];
+ //2020-30=1990
+ double ageDiffer = year - getAgeNumber();
+ String ageStr = "" + ageDiffer;
+ char[] ageChars = ageStr.toCharArray();
- String ageString = "未设置";
+ //1990
+ char ageChar = ageChars[2];
- switch (ageChar) {
- case '0':
- ageString = "00后";
- break;
- case '1':
- ageString = "10后";
- break;
- case '2':
- ageString = "20后";
- break;
- case '3':
- ageString = "30后";
- break;
- case '4':
- ageString = "40后";
- break;
- case '5':
- ageString = "50后";
- break;
- case '6':
- ageString = "60后";
- break;
- case '7':
- ageString = "70后";
- break;
- case '8':
- ageString = "80后";
- break;
- case '9':
- ageString = "90后";
- break;
+ String ageString = "未设置";
+
+ switch (ageChar) {
+ case '0':
+ ageString = "00后";
+ break;
+ case '1':
+ ageString = "10后";
+ break;
+ case '2':
+ ageString = "20后";
+ break;
+ case '3':
+ ageString = "30后";
+ break;
+ case '4':
+ ageString = "40后";
+ break;
+ case '5':
+ ageString = "50后";
+ break;
+ case '6':
+ ageString = "60后";
+ break;
+ case '7':
+ ageString = "70后";
+ break;
+ case '8':
+ ageString = "80后";
+ break;
+ case '9':
+ ageString = "90后";
+ break;
+ }
+
+ return ageString;
+ } else {
+ return "";
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ return "";
}
-
- return ageString;
}
public int getGenderValue() {
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 3395db70fd..edd6cc95c4 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
@@ -18,6 +18,7 @@ import com.mogo.service.MogoServicePaths;
import com.mogo.service.analytics.IMogoAnalytics;
import com.mogo.service.fragmentmanager.IMogoFragmentManager;
import com.mogo.utils.UiThreadHandler;
+import com.mogo.utils.logger.Logger;
/**
* @author congtaowang
@@ -27,8 +28,10 @@ import com.mogo.utils.UiThreadHandler;
*/
public class ExtensionsFragment extends MvpFragment< ExtensionsView, ExtensionsPresenter > implements ExtensionsView {
+ private static final String TAG = "ExtensionsFragment";
+
private JSurfaceView mVoiceIcon;
- private View mVoiceMsg;
+ private TextView mVoiceMsg;
private TextView mTime;
private TextView mDate;
@@ -141,4 +144,12 @@ public class ExtensionsFragment extends MvpFragment< ExtensionsView, ExtensionsP
mMsgContainer.setVisibility( hasMsg ? View.VISIBLE : View.GONE );
mMsgCounter.setText( amount > 99 ? getString( R.string.module_ext_str_dots ) : String.valueOf( amount ) );
}
+
+ @Override
+ public void renderAITipWords( String word ) {
+ if ( !TextUtils.isEmpty( word ) ) {
+ Logger.d( TAG, "current word: %s", word );
+ mVoiceMsg.setText( word );
+ }
+ }
}
diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/ExtensionsPresenter.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/ExtensionsPresenter.java
index 17572c38e0..b24bcea2b1 100644
--- a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/ExtensionsPresenter.java
+++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/ExtensionsPresenter.java
@@ -4,6 +4,9 @@ import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
+import android.os.Handler;
+import android.os.Looper;
+import android.os.Message;
import androidx.annotation.NonNull;
import androidx.lifecycle.LifecycleOwner;
@@ -19,7 +22,16 @@ import com.mogo.service.statusmanager.IMogoMsgCenter;
import com.mogo.service.statusmanager.IMogoMsgCenterListener;
import com.mogo.utils.logger.Logger;
+import java.util.ArrayDeque;
+import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Calendar;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Queue;
+import java.util.Random;
+import java.util.Set;
/**
@@ -36,6 +48,31 @@ public class ExtensionsPresenter extends Presenter< ExtensionsView > implements
private WeatherModel mWeatherModel;
+ public static final int MSG_SWITCH_AI_TIP_WORDS = 4000;
+ public static final long INTERVAL_TIME = 8_000L;
+ private String[] mAITipWords;
+ private int mCurrentIndex = 0;
+ private Handler mHandler = new Handler( Looper.getMainLooper() ) {
+ @Override
+ public void handleMessage( Message msg ) {
+ super.handleMessage( msg );
+ if ( msg.what == MSG_SWITCH_AI_TIP_WORDS ) {
+ if ( mView != null ) {
+ if ( mCurrentIndex < mAITipWords.length ) {
+ mView.renderAITipWords( mAITipWords[mCurrentIndex++] );
+ } else {
+ mCurrentIndex = 0;
+ mHasTipWords = generateTipWordsSequence();
+ }
+ }
+ if ( mHasTipWords ) {
+ mHandler.sendEmptyMessageDelayed( MSG_SWITCH_AI_TIP_WORDS, INTERVAL_TIME );
+ }
+ }
+ }
+ };
+ private boolean mHasTipWords = false;
+
/**
* 接收时间变化的广播
*/
@@ -52,10 +89,30 @@ public class ExtensionsPresenter extends Presenter< ExtensionsView > implements
private IMogoMsgCenter mMsgCenter;
+ private boolean generateTipWordsSequence() {
+ if ( mAITipWords != null && mAITipWords.length > 0 ) {
+ Random random = new Random( System.currentTimeMillis() );
+ int loop = mAITipWords.length / 2;
+ int bound = mAITipWords.length;
+ for ( int i = 0; i < loop; i++ ) {
+ int target = random.nextInt( bound );
+ int sweepTarget = random.nextInt( bound );
+ if ( target != sweepTarget ) {
+ String targetStr = mAITipWords[target];
+ mAITipWords[target] = mAITipWords[sweepTarget];
+ mAITipWords[sweepTarget] = targetStr;
+ }
+ }
+ Logger.d( TAG, "next generate sequence: " + mAITipWords );
+ return true;
+ }
+ return false;
+ }
public ExtensionsPresenter( ExtensionsView view ) {
super( view );
mWeeks = getContext().getResources().getStringArray( R.array.module_ext_str_arr_week );
+ mAITipWords = getContext().getResources().getStringArray( R.array.module_ext_str_arr_ai_tips );
mWeatherModel = new WeatherModel( getContext() );
}
@@ -68,6 +125,7 @@ public class ExtensionsPresenter extends Presenter< ExtensionsView > implements
refreshTimeAndDate();
mMsgCenter = ( IMogoMsgCenter ) ARouter.getInstance().build( MogoServicePaths.PATH_MSG_CENTER ).navigation();
mMsgCenter.registerMsgCenterListener( this );
+ mHasTipWords = generateTipWordsSequence();
}
/**
@@ -115,6 +173,22 @@ public class ExtensionsPresenter extends Presenter< ExtensionsView > implements
}
}
+ @Override
+ public void onResume( @NonNull LifecycleOwner owner ) {
+ super.onResume( owner );
+ if ( mHasTipWords ) {
+ mHandler.sendEmptyMessageDelayed( MSG_SWITCH_AI_TIP_WORDS, INTERVAL_TIME );
+ }
+ }
+
+ @Override
+ public void onPause( @NonNull LifecycleOwner owner ) {
+ super.onPause( owner );
+ if ( mHasTipWords ) {
+ mHandler.removeMessages( MSG_SWITCH_AI_TIP_WORDS );
+ }
+ }
+
@Override
public void onDestroy( @NonNull LifecycleOwner owner ) {
super.onDestroy( owner );
diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/ExtensionsView.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/ExtensionsView.java
index 3ab09a0b41..91f3d5e19c 100644
--- a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/ExtensionsView.java
+++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/ExtensionsView.java
@@ -35,4 +35,11 @@ public interface ExtensionsView extends IView {
* @param amount 消息数量
*/
void renderMsgInfo( boolean hasMsg, int amount );
+
+ /**
+ * 更换小智语音提示词
+ *
+ * @param word
+ */
+ void renderAITipWords( String word );
}
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
index 4fb5fb5a95..ccf54baede 100644
--- 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
@@ -39,6 +39,8 @@ public class JSurfaceView extends SurfaceView implements Runnable, SurfaceHolder
*/
private int[] mFrames;
+ private Thread mThread;
+
// 使用 BitmapFactory.Option.inBitmap 属性复用 bitmap 对象
private Bitmap mContainerBitmap = null;
@@ -78,12 +80,19 @@ public class JSurfaceView extends SurfaceView implements Runnable, SurfaceHolder
if ( bRunning ) {
return;
}
- ThreadPoolService.execute( this );
bRunning = true;
+ mThread = new Thread( this );
+ mThread.start();
}
public void stop() {
bRunning = false;
+ try {
+ mThread.interrupt();
+ mThread = null;
+ } catch ( Exception e ) {
+ e.printStackTrace();
+ }
}
@Override
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_000.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00000.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_000.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00000.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_001.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00001.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_001.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00001.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_002.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00002.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_002.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00002.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_003.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00003.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_003.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00003.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_004.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00004.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_004.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00004.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_005.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00005.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_005.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00005.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_006.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00006.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_006.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00006.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_007.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00007.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_007.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00007.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_008.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00008.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_008.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00008.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_009.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00009.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_009.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00009.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_010.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00010.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_010.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00010.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_011.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00011.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_011.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00011.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_012.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00012.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_012.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00012.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_013.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00013.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_013.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00013.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_014.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00014.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_014.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00014.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_015.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00015.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_015.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00015.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_016.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00016.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_016.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00016.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_017.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00017.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_017.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00017.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_018.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00018.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_018.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00018.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_019.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00019.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_019.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00019.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_020.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00020.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_020.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00020.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_021.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00021.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_021.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00021.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_022.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00022.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_022.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00022.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_023.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00023.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_023.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00023.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_024.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00024.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_024.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00024.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_025.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00025.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_025.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00025.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_026.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00026.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_026.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00026.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_027.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00027.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_027.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00027.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_028.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00028.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_028.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00028.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_029.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00029.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_029.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00029.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_030.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00030.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_030.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00030.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_031.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00031.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_031.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00031.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_032.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00032.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_032.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00032.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_033.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00033.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_033.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00033.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_034.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00034.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_034.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00034.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_035.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00035.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_035.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00035.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_036.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00036.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_036.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00036.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_037.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00037.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_037.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00037.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_038.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00038.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_038.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00038.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_039.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00039.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_039.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00039.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_040.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00040.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_040.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00040.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_041.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00041.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_041.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00041.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_042.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00042.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_042.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00042.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_043.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00043.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_043.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00043.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_044.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00044.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_044.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00044.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_045.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00045.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_045.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00045.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_046.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00046.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_046.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00046.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_047.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00047.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_047.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00047.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_048.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00048.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_048.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00048.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_049.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00049.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_049.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00049.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_050.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00050.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_050.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00050.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_051.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00051.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_051.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00051.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_052.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00052.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_052.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00052.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_053.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00053.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_053.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00053.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_054.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00054.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_054.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00054.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_055.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00055.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_055.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00055.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_056.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00056.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_056.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00056.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_057.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00057.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_057.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00057.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_058.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00058.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_058.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00058.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_059.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00059.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_059.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00059.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_060.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00060.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_060.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00060.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_061.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00061.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_061.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00061.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_062.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00062.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_062.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00062.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_063.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00063.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_063.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00063.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_064.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00064.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_064.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00064.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_065.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00065.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_065.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00065.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_066.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00066.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_066.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00066.png
diff --git a/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_067.png b/modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00067.png
similarity index 100%
rename from modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00_067.png
rename to modules/mogo-module-extensions/src/main/res/drawable-ldpi/mogo_tts_icon_00067.png
diff --git a/modules/mogo-module-extensions/src/main/res/values/strings.xml b/modules/mogo-module-extensions/src/main/res/values/strings.xml
index 784f01f88e..1d68dcdcab 100644
--- a/modules/mogo-module-extensions/src/main/res/values/strings.xml
+++ b/modules/mogo-module-extensions/src/main/res/values/strings.xml
@@ -20,4 +20,26 @@
退出导航
继续导航
退出全览
+
+
+ - 你好小智,播放音乐
+ - 你好小智,我要听音乐
+ - 你好小智,播放赵磊的歌
+ - 你好小智,我想听成都
+ - 你好小智,打开导航
+ - 你好小智,我要去拉萨
+ - 你好小智,我要去加油站
+ - 你好小智,导航去西单商场
+ - 你好小智,打开行车记录仪
+ - 你好小智,打开收音机
+ - 你好小智,调频到97.4
+ - 你好小智,调频到103.9
+ - 你好小智,今天天气怎么样
+ - 你好小智,北京明天天气怎么样
+ - 你好小智,打开车聊聊
+ - 你好小智,我想聊天
+ - 你好小智,中关村堵不堵
+ - 你好小智,打开探路
+ - 你好小智,附近路况
+
diff --git a/modules/mogo-module-main/src/main/java/com/mogo/module/main/cards/MogoModulesManager.java b/modules/mogo-module-main/src/main/java/com/mogo/module/main/cards/MogoModulesManager.java
index ad7c519538..ca3de3abb9 100644
--- a/modules/mogo-module-main/src/main/java/com/mogo/module/main/cards/MogoModulesManager.java
+++ b/modules/mogo-module-main/src/main/java/com/mogo/module/main/cards/MogoModulesManager.java
@@ -5,8 +5,8 @@ import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.text.TextUtils;
-import android.util.Log;
import android.view.MotionEvent;
+import android.widget.TextView;
import androidx.fragment.app.Fragment;
@@ -36,6 +36,11 @@ import com.mogo.service.module.IMogoModuleProvider;
import com.mogo.service.module.ModuleType;
import com.mogo.utils.ResourcesHelper;
import com.mogo.utils.logger.Logger;
+import com.mogo.utils.network.utils.GsonUtil;
+import com.mogo.utils.storage.SharedPrefsMgr;
+
+import org.json.JSONArray;
+import org.json.JSONException;
import java.util.ArrayList;
import java.util.HashMap;
@@ -50,15 +55,15 @@ import java.util.Map;
* 卡片加载
*/
public class MogoModulesManager implements MogoModulesHandler,
- IMogoMapListener,
- IMogoNaviListener,
- IMogoLocationListener {
+ IMogoMapListener,
+ IMogoNaviListener,
+ IMogoLocationListener {
private static final String TAG = "MogoModulesManager";
private MainActivity mActivity;
- private Map mModuleProviders = new HashMap<>();
+ private Map< MogoModule, IMogoModuleProvider > mModuleProviders = new HashMap<>();
private IMogoAnalytics mTrackManager;
private IMogoMapService mapService;
@@ -67,17 +72,20 @@ public class MogoModulesManager implements MogoModulesHandler,
private BroadcastReceiver mReceiver;
- public MogoModulesManager(MainActivity activity) {
- if (activity == null) {
- throw new NullPointerException("activity can't be null.");
+ public static final String KEY_SORTED_CARD_MODULES = "sortedCards";
+ private List< String > mSortedCards = new ArrayList<>();
+
+ public MogoModulesManager( MainActivity activity ) {
+ if ( activity == null ) {
+ throw new NullPointerException( "activity can't be null." );
}
this.mActivity = activity;
- mTrackManager = (IMogoAnalytics) ARouter.getInstance()
- .build(MogoServicePaths.PATH_UTILS_ANALYTICS)
- .navigation();
+ mTrackManager = ( IMogoAnalytics ) ARouter.getInstance()
+ .build( MogoServicePaths.PATH_UTILS_ANALYTICS )
+ .navigation();
- mapService = (IMogoMapService) ARouter.getInstance().build(
- MogoServicePaths.PATH_SERVICES_MAP
+ mapService = ( IMogoMapService ) ARouter.getInstance().build(
+ MogoServicePaths.PATH_SERVICES_MAP
).navigation();
registerReceiver();
@@ -93,264 +101,310 @@ public class MogoModulesManager implements MogoModulesHandler,
@Override
public void loadModules() {
- final List modules = MogoModulePaths.getModules();
- if (modules != null && !modules.isEmpty()) {
- for (MogoModule module : modules) {
- IMogoModuleProvider provider = load(module.getPath());
- if (provider != null) {
- mModuleProviders.put(module, provider);
+ final List< MogoModule > modules = MogoModulePaths.getModules();
+ if ( modules != null && !modules.isEmpty() ) {
+ for ( MogoModule module : modules ) {
+ IMogoModuleProvider provider = load( module.getPath() );
+ if ( provider != null ) {
+ mModuleProviders.put( module, provider );
}
}
}
}
@Override
- public void setMapLoadedCallback(Runnable callback) {
+ public void setMapLoadedCallback( Runnable callback ) {
mMapLoadedCallback = callback;
}
@Override
- public List loadCardsModule() {
- final List modules = MogoModulePaths.getModules();
- final ArrayList providers = new ArrayList<>();
- for (MogoModule module : modules) {
- IMogoModuleProvider provider = mModuleProviders.get(module);
- if (provider.getType() == ModuleType.TYPE_CARD_FRAGMENT) {
- if (mEnableModuleName == null) {
+ public List< IMogoModuleProvider > loadCardsModule() {
+
+ String sortedJson = SharedPrefsMgr.getInstance( getContext() ).getString( KEY_SORTED_CARD_MODULES );
+ try {
+ JSONArray array = new JSONArray( sortedJson );
+ mSortedCards = new ArrayList<>( array.length() );
+ for ( int i = 0; i < array.length(); i++ ) {
+ mSortedCards.add( array.getString( i ) );
+ }
+ Logger.d( TAG, "Last cache card: %s", mSortedCards );
+ } catch ( JSONException e ) {
+ e.printStackTrace();
+ }
+
+ final List< MogoModule > modules = MogoModulePaths.getModules();
+ final ArrayList< IMogoModuleProvider > providers = new ArrayList<>();
+ for ( MogoModule module : modules ) {
+ IMogoModuleProvider provider = mModuleProviders.get( module );
+ if ( provider.getType() == ModuleType.TYPE_CARD_FRAGMENT ) {
+ if ( mEnableModuleName == null ) {
mEnableModuleName = provider.getModuleName();
}
- providers.add(provider);
+ providers.add( provider );
}
}
- return providers;
+ return sort( providers );
+ }
+
+ private List< IMogoModuleProvider > sort( List< IMogoModuleProvider > modules ) {
+ if ( modules == null || modules.size() == 0 ) {
+ return modules;
+ }
+ if ( mSortedCards == null ) {
+ mSortedCards = new ArrayList<>();
+ }
+ List< IMogoModuleProvider > sortedList = new ArrayList<>( modules.size() );
+
+ for ( String sortedCard : mSortedCards ) {
+ for ( IMogoModuleProvider module : modules ) {
+ if ( TextUtils.equals( module.getModuleName(), sortedCard ) ) {
+ sortedList.add( module );
+ Logger.d( TAG, "%s sorted.", sortedCard );
+ break;
+ }
+ }
+ }
+ for ( IMogoModuleProvider module : modules ) {
+ if ( !sortedList.contains( module ) ) {
+ sortedList.add( module );
+ }
+ }
+ mSortedCards.clear();
+ for ( IMogoModuleProvider provider : sortedList ) {
+ mSortedCards.add( provider.getModuleName() );
+ }
+ return sortedList;
}
@Override
- public void loadMapModule(int containerId) {
- IMogoModuleProvider provider = (IMogoModuleProvider) ARouter.getInstance()
- .build(MogoModulePaths.PATH_MODULE_MAP)
- .navigation(getContext());
- addFragment(provider, containerId);
+ public void loadMapModule( int containerId ) {
+ IMogoModuleProvider provider = ( IMogoModuleProvider ) ARouter.getInstance()
+ .build( MogoModulePaths.PATH_MODULE_MAP )
+ .navigation( getContext() );
+ addFragment( provider, containerId );
}
@Override
- public void loadAppsListModule(int containerId) {
- IMogoModuleProvider provider = (IMogoModuleProvider) ARouter.getInstance()
- .build(MogoModulePaths.PATH_MODULE_APPS)
- .navigation(getContext());
- addFragment(provider, containerId);
+ public void loadAppsListModule( int containerId ) {
+ IMogoModuleProvider provider = ( IMogoModuleProvider ) ARouter.getInstance()
+ .build( MogoModulePaths.PATH_MODULE_APPS )
+ .navigation( getContext() );
+ addFragment( provider, containerId );
}
@Override
- public void loadExtensionsModule(int containerId) {
- IMogoModuleProvider provider = (IMogoModuleProvider) ARouter.getInstance()
- .build(ExtensionsModuleConst.PATH_EXTENSION)
- .navigation(getContext());
- addFragment(provider, containerId);
+ public void loadExtensionsModule( int containerId ) {
+ IMogoModuleProvider provider = ( IMogoModuleProvider ) ARouter.getInstance()
+ .build( ExtensionsModuleConst.PATH_EXTENSION )
+ .navigation( getContext() );
+ addFragment( provider, containerId );
}
@Override
- public void loadEntrancesModule(int containerId) {
- IMogoModuleProvider provider = (IMogoModuleProvider) ARouter.getInstance()
- .build(ExtensionsModuleConst.PATH_ENTRANCE)
- .navigation(getContext());
- addFragment(provider, containerId);
+ public void loadEntrancesModule( int containerId ) {
+ IMogoModuleProvider provider = ( IMogoModuleProvider ) ARouter.getInstance()
+ .build( ExtensionsModuleConst.PATH_ENTRANCE )
+ .navigation( getContext() );
+ addFragment( provider, containerId );
}
- private IMogoModuleProvider load(String path) {
- return (IMogoModuleProvider) ARouter.getInstance().build(path).navigation(getContext());
+ private IMogoModuleProvider load( String path ) {
+ return ( IMogoModuleProvider ) ARouter.getInstance().build( path ).navigation( getContext() );
}
- private void addFragment(IMogoModuleProvider provider, int containerId) {
- if (provider == null) {
- Logger.e(TAG, "add fragment fail cause provider == null, container is %s",
- ResourcesHelper.getResNameById(getApplicationContext(), containerId));
+ private void addFragment( IMogoModuleProvider provider, int containerId ) {
+ if ( provider == null ) {
+ Logger.e( TAG, "add fragment fail cause provider == null, container is %s",
+ ResourcesHelper.getResNameById( getApplicationContext(), containerId ) );
return;
}
- final Fragment fragment = provider.createFragment(getContext(), null);
- if (fragment == null) {
- Logger.e(TAG, "add fragment fail cause fragment == null, container is %s",
- ResourcesHelper.getResNameById(getApplicationContext(), containerId));
+ final Fragment fragment = provider.createFragment( getContext(), null );
+ if ( fragment == null ) {
+ Logger.e( TAG, "add fragment fail cause fragment == null, container is %s",
+ ResourcesHelper.getResNameById( getApplicationContext(), containerId ) );
return;
}
mActivity.getSupportFragmentManager().beginTransaction()
- .add(containerId, fragment, provider.getModuleName())
- .commitAllowingStateLoss();
+ .add( containerId, fragment, provider.getModuleName() )
+ .commitAllowingStateLoss();
}
@Override
- public void setModuleEnable(String module) {
+ public void setModuleEnable( String module ) {
// 仅操作上一个模块和当前模块
- Iterator iterator = mModuleProviders.values().iterator();
+ Iterator< IMogoModuleProvider > iterator = mModuleProviders.values().iterator();
int counter = 0;
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoModuleProvider provider = iterator.next();
- if (provider == null) {
+ if ( provider == null ) {
continue;
}
- if (provider.getType() != ModuleType.TYPE_CARD_FRAGMENT) {
+ if ( provider.getType() != ModuleType.TYPE_CARD_FRAGMENT ) {
continue;
}
- if (TextUtils.equals(mEnableModuleName, provider.getModuleName())) {
+ if ( TextUtils.equals( mEnableModuleName, provider.getModuleName() ) ) {
final IMogoModuleLifecycle lifecycle =
- MogoRegisterCenterHandler.getInstance().getLifecycleListener(mEnableModuleName);
- if (lifecycle != null) {
+ MogoRegisterCenterHandler.getInstance().getLifecycleListener( mEnableModuleName );
+ if ( lifecycle != null ) {
try {
final long start = System.currentTimeMillis();
lifecycle.onDisable();
- Logger.i(TAG,
- "set %s module disable event cost " + (System.currentTimeMillis()
- - start) + "ms", mEnableModuleName);
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ Logger.i( TAG,
+ "set %s module disable event cost " + ( System.currentTimeMillis()
+ - start ) + "ms", mEnableModuleName );
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
counter++;
continue;
}
- if (TextUtils.equals(module, provider.getModuleName())) {
+ if ( TextUtils.equals( module, provider.getModuleName() ) ) {
final IMogoModuleLifecycle lifecycle =
- MogoRegisterCenterHandler.getInstance().getLifecycleListener(module);
- if (lifecycle != null) {
+ MogoRegisterCenterHandler.getInstance().getLifecycleListener( module );
+ if ( lifecycle != null ) {
try {
final long start = System.currentTimeMillis();
lifecycle.onPerform();
- Logger.i(TAG,
- "set %s module perform event cost " + (System.currentTimeMillis()
- - start) + "ms", module);
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ Logger.i( TAG,
+ "set %s module perform event cost " + ( System.currentTimeMillis()
+ - start ) + "ms", module );
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
counter++;
continue;
}
- if (counter == 2) {
+ if ( counter == 2 ) {
break;
}
}
mEnableModuleName = module;
+ mSortedCards.remove( mEnableModuleName );
+ mSortedCards.add( 0, mEnableModuleName );
+ SharedPrefsMgr.getInstance( getContext() ).putString( KEY_SORTED_CARD_MODULES, GsonUtil.jsonFromObject( mSortedCards ) );
}
@Override
public void onMapLoaded() {
- if (mMapLoadedCallback != null) {
+ if ( mMapLoadedCallback != null ) {
mMapLoadedCallback.run();
mMapLoadedCallback = null;
}
}
@Override
- public void onTouch(MotionEvent motionEvent) {
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getMapListeners();
- if (iterator == null) {
+ public void onTouch( MotionEvent motionEvent ) {
+ Iterator< IMogoMapListener > iterator =
+ MogoRegisterCenterHandler.getInstance().getMapListeners();
+ if ( iterator == null ) {
return;
}
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoMapListener listener = iterator.next();
- if (listener != null) {
+ if ( listener != null ) {
try {
- listener.onTouch(motionEvent);
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ listener.onTouch( motionEvent );
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
}
}
@Override
- public void onPOIClick(MogoPoi poi) {
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getMapListeners();
- if (iterator == null) {
+ public void onPOIClick( MogoPoi poi ) {
+ Iterator< IMogoMapListener > iterator =
+ MogoRegisterCenterHandler.getInstance().getMapListeners();
+ if ( iterator == null ) {
return;
}
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoMapListener listener = iterator.next();
- if (listener != null) {
+ if ( listener != null ) {
try {
- listener.onPOIClick(poi);
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ listener.onPOIClick( poi );
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
}
}
@Override
- public void onMapClick(MogoLatLng latLng) {
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getMapListeners();
- if (iterator == null) {
+ public void onMapClick( MogoLatLng latLng ) {
+ Iterator< IMogoMapListener > iterator =
+ MogoRegisterCenterHandler.getInstance().getMapListeners();
+ if ( iterator == null ) {
return;
}
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoMapListener listener = iterator.next();
- if (listener != null) {
+ if ( listener != null ) {
try {
- listener.onMapClick(latLng);
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ listener.onMapClick( latLng );
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
}
}
@Override
- public void onLockMap(boolean isLock) {
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getMapListeners();
- if (iterator == null) {
+ public void onLockMap( boolean isLock ) {
+ Iterator< IMogoMapListener > iterator =
+ MogoRegisterCenterHandler.getInstance().getMapListeners();
+ if ( iterator == null ) {
return;
}
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoMapListener listener = iterator.next();
- if (listener != null) {
+ if ( listener != null ) {
try {
- listener.onLockMap(isLock);
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ listener.onLockMap( isLock );
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
}
}
@Override
- public void onMapModeChanged(EnumMapUI ui) {
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getMapListeners();
- if (iterator == null) {
+ public void onMapModeChanged( EnumMapUI ui ) {
+ Iterator< IMogoMapListener > iterator =
+ MogoRegisterCenterHandler.getInstance().getMapListeners();
+ if ( iterator == null ) {
return;
}
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoMapListener listener = iterator.next();
- if (listener != null) {
+ if ( listener != null ) {
try {
- listener.onMapModeChanged(ui);
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ listener.onMapModeChanged( ui );
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
}
}
@Override
- public void onMapChanged(MogoLatLng location, float zoom, float tilt, float bearing) {
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getMapListeners();
- if (iterator == null) {
+ public void onMapChanged( MogoLatLng location, float zoom, float tilt, float bearing ) {
+ Iterator< IMogoMapListener > iterator =
+ MogoRegisterCenterHandler.getInstance().getMapListeners();
+ if ( iterator == null ) {
return;
}
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoMapListener listener = iterator.next();
- if (listener != null) {
+ if ( listener != null ) {
try {
- listener.onMapChanged(location, zoom, tilt, bearing);
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ listener.onMapChanged( location, zoom, tilt, bearing );
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
}
@@ -358,18 +412,18 @@ public class MogoModulesManager implements MogoModulesHandler,
@Override
public void onInitNaviFailure() {
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getNaviListeners();
- if (iterator == null) {
+ Iterator< IMogoNaviListener > iterator =
+ MogoRegisterCenterHandler.getInstance().getNaviListeners();
+ if ( iterator == null ) {
return;
}
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoNaviListener listener = iterator.next();
- if (listener != null) {
+ if ( listener != null ) {
try {
listener.onInitNaviFailure();
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
}
@@ -377,39 +431,39 @@ public class MogoModulesManager implements MogoModulesHandler,
@Override
public void onInitNaviSuccess() {
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getNaviListeners();
- if (iterator == null) {
+ Iterator< IMogoNaviListener > iterator =
+ MogoRegisterCenterHandler.getInstance().getNaviListeners();
+ if ( iterator == null ) {
return;
}
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoNaviListener listener = iterator.next();
- if (listener != null) {
+ if ( listener != null ) {
try {
listener.onInitNaviSuccess();
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
}
}
@Override
- public void onNaviInfoUpdate(MogoNaviInfo naviinfo) {
- MapBroadCastHelper.getInstance(getApplicationContext()).notifyXiaozhi(naviinfo);
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getNaviListeners();
+ public void onNaviInfoUpdate( MogoNaviInfo naviinfo ) {
+ MapBroadCastHelper.getInstance( getApplicationContext() ).notifyXiaozhi( naviinfo );
+ Iterator< IMogoNaviListener > iterator =
+ MogoRegisterCenterHandler.getInstance().getNaviListeners();
- if (iterator == null) {
+ if ( iterator == null ) {
return;
}
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoNaviListener listener = iterator.next();
- if (listener != null) {
+ if ( listener != null ) {
try {
- listener.onNaviInfoUpdate(naviinfo);
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ listener.onNaviInfoUpdate( naviinfo );
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
}
@@ -417,21 +471,21 @@ public class MogoModulesManager implements MogoModulesHandler,
@Override
public void onStartNavi() {
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getNaviListeners();
- mTrackManager.track("Navigation_begin", new HashMap<>());
+ Iterator< IMogoNaviListener > iterator =
+ MogoRegisterCenterHandler.getInstance().getNaviListeners();
+ mTrackManager.track( "Navigation_begin", new HashMap<>() );
- MapBroadCastHelper.getInstance(getApplicationContext()).startNavi();
- if (iterator == null) {
+ MapBroadCastHelper.getInstance( getApplicationContext() ).startNavi();
+ if ( iterator == null ) {
return;
}
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoNaviListener listener = iterator.next();
- if (listener != null) {
+ if ( listener != null ) {
try {
listener.onStartNavi();
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
}
@@ -439,20 +493,20 @@ public class MogoModulesManager implements MogoModulesHandler,
@Override
public void onStopNavi() {
- mTrackManager.track("Navigation_end", new HashMap<>());
- MapBroadCastHelper.getInstance(getApplicationContext()).stopNavi();
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getNaviListeners();
- if (iterator == null) {
+ mTrackManager.track( "Navigation_end", new HashMap<>() );
+ MapBroadCastHelper.getInstance( getApplicationContext() ).stopNavi();
+ Iterator< IMogoNaviListener > iterator =
+ MogoRegisterCenterHandler.getInstance().getNaviListeners();
+ if ( iterator == null ) {
return;
}
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoNaviListener listener = iterator.next();
- if (listener != null) {
+ if ( listener != null ) {
try {
listener.onStopNavi();
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
}
@@ -460,18 +514,18 @@ public class MogoModulesManager implements MogoModulesHandler,
@Override
public void onCalculateSuccess() {
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getNaviListeners();
- if (iterator == null) {
+ Iterator< IMogoNaviListener > iterator =
+ MogoRegisterCenterHandler.getInstance().getNaviListeners();
+ if ( iterator == null ) {
return;
}
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoNaviListener listener = iterator.next();
- if (listener != null) {
+ if ( listener != null ) {
try {
listener.onCalculateSuccess();
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
}
@@ -479,56 +533,56 @@ public class MogoModulesManager implements MogoModulesHandler,
@Override
public void onoCalculateFailed() {
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getNaviListeners();
- if (iterator == null) {
+ Iterator< IMogoNaviListener > iterator =
+ MogoRegisterCenterHandler.getInstance().getNaviListeners();
+ if ( iterator == null ) {
return;
}
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoNaviListener listener = iterator.next();
- if (listener != null) {
+ if ( listener != null ) {
try {
listener.onoCalculateFailed();
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
}
}
@Override
- public void onUpdateTraffic(MogoTraffic traffic) {
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getNaviListeners();
- if (iterator == null) {
+ public void onUpdateTraffic( MogoTraffic traffic ) {
+ Iterator< IMogoNaviListener > iterator =
+ MogoRegisterCenterHandler.getInstance().getNaviListeners();
+ if ( iterator == null ) {
return;
}
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoNaviListener listener = iterator.next();
- if (listener != null) {
+ if ( listener != null ) {
try {
- listener.onUpdateTraffic(traffic);
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ listener.onUpdateTraffic( traffic );
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
}
}
@Override
- public void onLocationChanged(MogoLocation location) {
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getLocationListeners();
- if (iterator == null) {
+ public void onLocationChanged( MogoLocation location ) {
+ Iterator< IMogoLocationListener > iterator =
+ MogoRegisterCenterHandler.getInstance().getLocationListeners();
+ if ( iterator == null ) {
return;
}
- while (iterator.hasNext()) {
+ while ( iterator.hasNext() ) {
IMogoLocationListener listener = iterator.next();
- if (listener != null) {
+ if ( listener != null ) {
try {
- listener.onLocationChanged(location);
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ listener.onLocationChanged( location );
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
}
@@ -537,37 +591,37 @@ public class MogoModulesManager implements MogoModulesHandler,
public void registerReceiver() {
mReceiver = new BroadcastReceiver() {
@Override
- public void onReceive(Context context, Intent intent) {
+ public void onReceive( Context context, Intent intent ) {
final String action = intent.getAction();
- if (TextUtils.equals(action, Intent.ACTION_POWER_CONNECTED)) {
- Iterator iterator =
- MogoRegisterCenterHandler.getInstance().getLifecycleListeners();
- if (iterator.hasNext()) {
+ if ( TextUtils.equals( action, Intent.ACTION_POWER_CONNECTED ) ) {
+ Iterator< IMogoModuleLifecycle > iterator =
+ MogoRegisterCenterHandler.getInstance().getLifecycleListeners();
+ if ( iterator.hasNext() ) {
iterator.next().accOn();
}
- } else if (TextUtils.equals(action, Intent.ACTION_POWER_DISCONNECTED)) {
+ } else if ( TextUtils.equals( action, Intent.ACTION_POWER_DISCONNECTED ) ) {
}
}
};
IntentFilter inputFilter = new IntentFilter();
- inputFilter.addAction(Intent.ACTION_POWER_CONNECTED);
- inputFilter.addAction(Intent.ACTION_POWER_DISCONNECTED);
- getApplicationContext().registerReceiver(mReceiver, inputFilter);
+ inputFilter.addAction( Intent.ACTION_POWER_CONNECTED );
+ inputFilter.addAction( Intent.ACTION_POWER_DISCONNECTED );
+ getApplicationContext().registerReceiver( mReceiver, inputFilter );
}
@Override
public void destroy() {
- if (mReceiver != null) {
+ if ( mReceiver != null ) {
try {
- getApplicationContext().unregisterReceiver(mReceiver);
- } catch (Exception e) {
+ getApplicationContext().unregisterReceiver( mReceiver );
+ } catch ( Exception e ) {
e.printStackTrace();
}
}
mReceiver = null;
mActivity = null;
- if (mModuleProviders != null) {
+ if ( mModuleProviders != null ) {
mModuleProviders.clear();
}
mModuleProviders = null;
@@ -576,14 +630,14 @@ public class MogoModulesManager implements MogoModulesHandler,
}
@Override
- public boolean onMarkerClicked(IMogoMarker marker) {
+ public boolean onMarkerClicked( IMogoMarker marker ) {
IMogoMarkerClickListener listener =
- MogoRegisterCenterHandler.getInstance().getMarkerListener(marker.getOwner());
- if (listener != null) {
+ MogoRegisterCenterHandler.getInstance().getMarkerListener( marker.getOwner() );
+ if ( listener != null ) {
try {
- return listener.onMarkerClicked(marker);
- } catch (Exception e) {
- Logger.e(TAG, e, "error.");
+ return listener.onMarkerClicked( marker );
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
}
}
return false;
diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServiceProvider.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServiceProvider.java
index e9f5c31658..4c3a8a2525 100644
--- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServiceProvider.java
+++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServiceProvider.java
@@ -118,8 +118,13 @@ public class MogoServiceProvider implements IMogoModuleProvider,
super.handleMessage( msg );
switch ( msg.what ) {
case ServiceConst.MSG_TYPE_REFRESH_DECREASE:
+ if ( mStatusManager.isSearchUIShow() ) {
+ stopAutoRefreshStrategy();
+ return;
+ }
mRefreshRemainingTime -= ServiceConst.DECREASE_INTERVAL;
if ( mRefreshRemainingTime == 0 ) {
+ Logger.d( TAG, "move to center and refresh data." );
mStatusManager.setUserInteractionStatus(ServiceConst.TYPE, true, false );
mUiController.moveToCenter(mLastAutoRefreshLocation);
notifyRefreshData( mLastAutoRefreshLocation, getQueryRadius(), mAutoRefreshCallback );
@@ -366,6 +371,7 @@ public class MogoServiceProvider implements IMogoModuleProvider,
}
private void stopAutoRefreshStrategy() {
+ Logger.d( TAG, "stop auto refresh strategy" );
mHandler.removeMessages( ServiceConst.MSG_TYPE_REFRESH_DECREASE );
}
@@ -517,6 +523,7 @@ public class MogoServiceProvider implements IMogoModuleProvider,
@Override
public void onStatusChanged( StatusDescriptor descriptor, boolean isTrue ) {
+ Logger.d(TAG, "状态发生改变---descriptor---" + descriptor + "----isTrue---" + isTrue);
switch ( descriptor ) {
case USER_INTERACTED:
if ( isTrue && !mRefreshRemainingTimeStatus ) {
@@ -526,7 +533,6 @@ public class MogoServiceProvider implements IMogoModuleProvider,
}
break;
case SEARCH_UI:
- case V2X_UI:
if ( isTrue ) {
// 搜索时,不在自动刷新打点策略
stopAutoRefreshStrategy();
@@ -537,9 +543,33 @@ public class MogoServiceProvider implements IMogoModuleProvider,
}
}
break;
+ case V2X_UI:
+ try {
+ if ( isTrue ) {
+ // V2X_UI时,不在自动刷新打点策略
+ stopAutoRefreshStrategy();
+ } else {
+ // 主动刷新
+ refreshStrategy();
+ // V2X_UI后,打开打点策略
+ if ( mAutoRefreshCallback != null ) {
+ mAutoRefreshCallback.onSuccess();
+ }
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ break;
}
}
+ public void refreshStrategy(){
+ Logger.d( TAG, "move to center and refresh data." );
+ mStatusManager.setUserInteractionStatus(ServiceConst.TYPE, true, false );
+ mUiController.moveToCenter(mLastAutoRefreshLocation);
+ notifyRefreshData( mLastAutoRefreshLocation, getQueryRadius(), mAutoRefreshCallback );
+ }
+
@Override
public void onCalculateSuccess() {
diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java
index df330dd8fd..1c255e42b3 100644
--- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java
+++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/MapMarkerManager.java
@@ -46,6 +46,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag
private static final String TAG = "MarkerManager";
// 第一次请求到地图的Marker数据
private boolean isFirstMarker = true;
+ private boolean isOnLineCard = false;
private Context mContext;
private static IMogoMarker lastMarker;
private static MapMarkerManager mMarkerManager;
@@ -81,6 +82,12 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag
public void onSwitched(int position, String moduleName) {
Logger.e(TAG, "======moduleName:" + moduleName);
highlightedMarker(moduleName);
+
+ if (moduleName.equals(ServiceConst.CARD_TYPE_USER_DATA)) {
+ isOnLineCard = true;
+ } else {
+ isOnLineCard = false;
+ }
}
});
}
@@ -176,7 +183,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag
// 对指定类型高亮处理
- public static void highlightedMarker(String typeTag) {
+ public synchronized static void highlightedMarker(String typeTag) {
try {
Map> allMarker = MarkerServiceHandler.getMarkerManager().getAllMarkers();
for (Map.Entry> entry : allMarker.entrySet()) {
@@ -203,7 +210,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag
*
* @param marker 要关闭的Marker
*/
- public void closeMarkerSelect(IMogoMarker marker) {
+ public synchronized void closeMarkerSelect(IMogoMarker marker) {
// 将上次选中 Marker 设置为未选中状态
if (marker != null) {
Logger.i(TAG, "closeMarkerSelect 将出Marker详情关闭:" + marker);
@@ -223,7 +230,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag
/**
* 绘制Marker
*/
- public void drawMapMarker(MarkerResponse response) {
+ public synchronized void drawMapMarker(MarkerResponse response) {
lastMarker = null;
JSONArray array = new JSONArray();
@@ -251,20 +258,20 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag
List shareMusicList = markerCardResult.getShareMusic();
List noveltyInfoList = markerCardResult.getNoveltyInfo();
- if (carChatList != null) {
- for (MarkerCarChat markerCarChat : carChatList) {
- MarkerLocation markerLocation = markerCarChat.getLocation();
-
- MarkerShowEntity markerShowEntity = new MarkerShowEntity();
- markerShowEntity.setBindObj(markerCarChat);
- markerShowEntity.setMarkerLocation(markerLocation);
- markerShowEntity.setMarkerType(markerCarChat.getType());
- markerShowEntity.setTextContent(markerCarChat.getUserInfo().getUserName());
- markerShowEntity.setIconUrl(markerCarChat.getUserInfo().getUserHead());
-
- drawMapMarker(markerShowEntity);
- }
- }
+// if (carChatList != null) {
+// for (MarkerCarChat markerCarChat : carChatList) {
+// MarkerLocation markerLocation = markerCarChat.getLocation();
+//
+// MarkerShowEntity markerShowEntity = new MarkerShowEntity();
+// markerShowEntity.setBindObj(markerCarChat);
+// markerShowEntity.setMarkerLocation(markerLocation);
+// markerShowEntity.setMarkerType(markerCarChat.getType());
+// markerShowEntity.setTextContent(markerCarChat.getUserInfo().getUserName());
+// markerShowEntity.setIconUrl(markerCarChat.getUserInfo().getUserHead());
+//
+// drawMapMarker(markerShowEntity);
+// }
+// }
if (onlineCarList != null) {
IMogoMarker nearlyMogoMarker = null;
@@ -303,7 +310,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag
try {
// 在ACC on 之后第一次获取到了在线车辆数据,选中最近的一个Marker
- if (isFirstMarker) {
+ if (isFirstMarker && isOnLineCard) {
if (nearlyMogoMarker != null) {
// getMogoCardManager().switch2(ServiceConst.CARD_TYPE_USER_DATA);
// MarkerShowEntity markerShowEntity = (MarkerShowEntity) nearlyMogoMarker.getObject();
@@ -401,7 +408,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag
/**
* 统计埋点
*/
- private static void fillNumberTrackEventBody(JSONArray arr, int type, int size) {
+ private synchronized static void fillNumberTrackEventBody(JSONArray arr, int type, int size) {
JSONObject object = new JSONObject();
try {
object.put("type", type);
@@ -419,7 +426,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag
*
* @param array 埋点数据
*/
- private static void analyticData(JSONArray array) {
+ private synchronized static void analyticData(JSONArray array) {
try {
if (array == null || array.length() == 0) {
return;
@@ -438,7 +445,7 @@ public class MapMarkerManager implements IMogoMarkerClickListener, IMogoOnMessag
* @param markerShowEntity marker 绘制数据实体
* @return 绘制的Marker
*/
- public IMogoMarker drawMapMarker(MarkerShowEntity markerShowEntity) {
+ public synchronized IMogoMarker drawMapMarker(MarkerShowEntity markerShowEntity) {
//Logger.i(TAG, "绘制Marker====drawMapMarker:" + markerShowEntity);
try {
if (markerShowEntity.getMarkerLocation() != null) {
diff --git a/modules/mogo-module-service/src/main/res/layout/view_map_marker.xml b/modules/mogo-module-service/src/main/res/layout/view_map_marker.xml
index 0613e51004..cc0f489a99 100644
--- a/modules/mogo-module-service/src/main/res/layout/view_map_marker.xml
+++ b/modules/mogo-module-service/src/main/res/layout/view_map_marker.xml
@@ -12,7 +12,6 @@
android:layout_width="@dimen/dp_34"
android:layout_height="@dimen/dp_64"
android:src="@drawable/icon_map_marker_car_gray"
- android:translationY="-10dp"
app:layout_constraintEnd_toEndOf="@+id/ivBg"
app:layout_constraintStart_toStartOf="@+id/ivBg"
app:layout_constraintTop_toBottomOf="@+id/ivBg" />
diff --git a/modules/mogo-module-service/src/main/res/layout/view_map_marker_info.xml b/modules/mogo-module-service/src/main/res/layout/view_map_marker_info.xml
index 19b71da718..ae9abe9dfe 100644
--- a/modules/mogo-module-service/src/main/res/layout/view_map_marker_info.xml
+++ b/modules/mogo-module-service/src/main/res/layout/view_map_marker_info.xml
@@ -13,7 +13,6 @@
android:layout_width="@dimen/dp_34"
android:layout_height="@dimen/dp_64"
android:src="@drawable/icon_map_marker_car_gray"
- android:translationY="-10dp"
app:layout_constraintEnd_toEndOf="@+id/ivReverseTriangle"
app:layout_constraintStart_toStartOf="@+id/ivReverseTriangle"
app:layout_constraintTop_toBottomOf="@+id/ivReverseTriangle" />
diff --git a/modules/mogo-module-tanlu/build.gradle b/modules/mogo-module-tanlu/build.gradle
index 2e567d7c7f..0b8129adce 100644
--- a/modules/mogo-module-tanlu/build.gradle
+++ b/modules/mogo-module-tanlu/build.gradle
@@ -51,16 +51,16 @@ dependencies {
implementation rootProject.ext.dependencies.mogoutils
implementation rootProject.ext.dependencies.mogocommons
implementation rootProject.ext.dependencies.mogoserviceapi
- implementation rootProject.ext.dependencies.modulecommon
- implementation rootProject.ext.dependencies.moduleservice
+ compileOnly rootProject.ext.dependencies.modulecommon
+ compileOnly rootProject.ext.dependencies.moduleservice
implementation rootProject.ext.dependencies.moduleshare
} else {
implementation project(":libraries:mogo-map")
implementation project(":foudations:mogo-utils")
api project(":foudations:mogo-commons")
implementation project(':services:mogo-service-api')
- implementation project(':modules:mogo-module-common')
- implementation project(':modules:mogo-module-service')
+ compileOnly project(':modules:mogo-module-common')
+ compileOnly project(':modules:mogo-module-service')
implementation project(':modules:mogo-module-share')
}
diff --git a/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/fragment/TanluCardViewFragment.java b/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/fragment/TanluCardViewFragment.java
index b73b01460d..92dd6cd3ea 100644
--- a/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/fragment/TanluCardViewFragment.java
+++ b/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/fragment/TanluCardViewFragment.java
@@ -71,6 +71,7 @@ import com.mogo.module.tanlu.model.event.MarkerInfo;
import com.mogo.module.tanlu.model.event.PushTypeInfo;
import com.mogo.module.tanlu.model.event.SharedialogEvent;
import com.mogo.module.tanlu.util.Utils;
+import com.mogo.module.tanlu.video.FullMediaActivity;
import com.mogo.module.tanlu.video.SimpleCoverVideoPlayer;
import com.mogo.module.tanlu.view.AutoZoomInImageView;
import com.mogo.service.MogoServicePaths;
@@ -195,9 +196,7 @@ public class TanluCardViewFragment extends MvpFragment>
// @Override
// public void onClick(View view) {
// Logger.d(TAG, "simpleCoverVideoPlayer onClick -------> ");
-// gsyVideoOptionBuilder.setUrl(mVideoUrl).setCacheWithPlay(false).setPlayTag(TAG)
-// .build(simpleCoverVideoPlayer);
-//// simpleCoverVideoPlayer.getStartButton().performClick();
+// FullMediaActivity.Companion.launch(getActivity(), mVideoUrl, mImageUrl, "东城区环球贸易中心", 1300000300);
// }
// });
}
@@ -473,11 +472,12 @@ public class TanluCardViewFragment extends MvpFragment>
public void onCmdSelected(String cmd) {
Log.d(TAG, "mogoVoiceListener cmd = " + cmd);
if (cmd.equals(TanluConstants.PLAY_VIDEO)) { //播放路况 --ok
- AIAssist.getInstance(getContext()).speakTTSVoice(getString(R.string.tanlu_prepare_play), null);
+ //语音会中断播放
+// AIAssist.getInstance(getContext()).speakTTSVoice(getString(R.string.tanlu_prepare_play), null);
gsyVideoOptionBuilder.setUrl(mVideoUrl).setCacheWithPlay(false).setPlayTag(TAG)
.build(simpleCoverVideoPlayer);
simpleCoverVideoPlayer.getStartButton().performClick();
- traceVideoPlayStatusData("1");
+ traceVideoPlayStatusData();
}
}
@@ -669,7 +669,7 @@ public class TanluCardViewFragment extends MvpFragment>
gsyVideoOptionBuilder.setUrl(videoUrl).setCacheWithPlay(false).setPlayTag(TAG)
.build(simpleCoverVideoPlayer);
simpleCoverVideoPlayer.getStartButton().performClick();
- traceVideoPlayStatusData("2");
+ traceVideoPlayStatusData();
if (mImageUrl == null) {
return;
@@ -678,15 +678,10 @@ public class TanluCardViewFragment extends MvpFragment>
/**
* 上传播放
- * @param type
- * type=1 主动触发播放
*
- * type=2 自动播放
*/
- private void traceVideoPlayStatusData(String type) {
- Map properties = new HashMap<>();
- properties.put("type", type);
- mAnalytics.track(TanluConstants.CARNET_USER_VIDEO_PLAY, properties);
+ private void traceVideoPlayStatusData() {
+ mAnalytics.track(TanluConstants.CARNET_USER_VIDEO_PLAY, null);
}
@@ -895,8 +890,10 @@ public class TanluCardViewFragment extends MvpFragment>
} else if (event.type.equals("3")) { //封路 10003
poiType = "10003";
mMarkerIcon = BitmapFactory.decodeResource(getResources(), R.drawable.tanlu_marker_road_closure);
- } else {
- mMarkerIcon = BitmapFactory.decodeResource(getResources(), R.drawable.tanlu_marker_block_up);
+ }
+ else {
+ poiType = "-1";
+// mMarkerIcon = BitmapFactory.decodeResource(getResources(), R.drawable.tanlu_marker_block_up);
}
double lat = TanluServiceHandler.getLocationClient().getLastKnowLocation().getLatitude();
@@ -926,7 +923,7 @@ public class TanluCardViewFragment extends MvpFragment>
/**
* 上报分享信息
*/
- private void uploadShareInfo(String poiType, String poiImgUrl, String nickname, String headImgUrl) {
+ private void uploadShareInfo(final String poiType, String poiImgUrl, String nickname, String headImgUrl) {
double lat = TanluServiceHandler.getLocationClient().getLastKnowLocation().getLatitude();
double lon = TanluServiceHandler.getLocationClient().getLastKnowLocation().getLongitude();
String addressStr = TanluServiceHandler.getLocationClient().getLastKnowLocation().getAddress();
@@ -935,14 +932,18 @@ public class TanluCardViewFragment extends MvpFragment>
new UploadShareCallback() {
@Override
public void onSuccess(BaseData data) {
- Log.d(TAG, "uploadShareInfo onSuccess ----->");
- AIAssist.getInstance(getContext()).speakTTSVoice(getString(R.string.tanlu_share_success), null);
+ Log.d(TAG, "uploadShareInfo onSuccess -----> poiType = " + poiType);
+ if (!poiType.equals("-1")) {
+ AIAssist.getInstance(getContext()).speakTTSVoice(getString(R.string.tanlu_share_success), null);
+ }
}
@Override
public void onFail(String message, int code) {
- Log.e(TAG, "uploadShareInfo onFail ----->");
- AIAssist.getInstance(getContext()).speakTTSVoice(getString(R.string.tanlu_share_failed), null);
+ Log.e(TAG, "uploadShareInfo onFail -----> poiType = " + poiType);
+ if (!poiType.equals("-1")) {
+ AIAssist.getInstance(getContext()).speakTTSVoice(getString(R.string.tanlu_share_failed), null);
+ }
}
});
}
@@ -1280,7 +1281,7 @@ public class TanluCardViewFragment extends MvpFragment>
private void speakSuccessVoice(List informations, String
trafficStatus) {
- Log.d(TAG, "informations.size() = " + informations.size());
+ Log.d(TAG, "speakSuccessVoice informations.size() = " + informations.size());
switch (informations.size()) {
case 0:
Logger.d(TAG, "speakSuccessVoice --0----> " + random.nextInt(3));
@@ -1292,6 +1293,7 @@ public class TanluCardViewFragment extends MvpFragment>
trackVoiceSearch(1);
AIAssist.getInstance(getContext()).speakTTSVoice((
String.format(voiceGetInfoMationTts, "1") + trafficStatus), null);
+ break;
case 2:
trackVoiceSearch(1);
@@ -1301,7 +1303,7 @@ public class TanluCardViewFragment extends MvpFragment>
voiceGetInfoMationTts,
"2"
) + trafficStatus), null);
-
+ break;
case 3:
Logger.d(TAG, "speakSuccessVoice ---3---> ");
trackVoiceSearch(1);
@@ -1310,6 +1312,7 @@ public class TanluCardViewFragment extends MvpFragment>
voiceGetInfoMationTts,
"3"
) + trafficStatus), null);
+ break;
default:
Logger.d(TAG, "speakSuccessVoice ---default-> ");
diff --git a/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/model/event/MarkerInfo.java b/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/model/event/MarkerInfo.java
index ce9e85c264..d5d8b1afd6 100644
--- a/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/model/event/MarkerInfo.java
+++ b/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/model/event/MarkerInfo.java
@@ -10,10 +10,10 @@ import java.io.Serializable;
public class MarkerInfo implements Serializable {
public String type; //封路,还是上报
public String imageUrl; //上传完cos图片
- public Long lon; //经度
- public Long lat; //纬度
+ public double lon; //经度
+ public double lat; //纬度
- public MarkerInfo(String type, String imageUrl, Long lon, Long lat) {
+ public MarkerInfo(String type, String imageUrl, double lon, double lat) {
this.type = type;
this.imageUrl = imageUrl;
this.lon = lon;
diff --git a/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/receiver/MarkerInfoReceiver.kt b/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/receiver/MarkerInfoReceiver.kt
index effe820e7e..505463804e 100644
--- a/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/receiver/MarkerInfoReceiver.kt
+++ b/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/receiver/MarkerInfoReceiver.kt
@@ -15,8 +15,8 @@ class MarkerInfoReceiver : BroadcastReceiver() {
if (intent.action == "com.zhidao.roadcondition.marker.info"){
var type = intent.getStringExtra("type")
var imageUrl = intent.getStringExtra("imageUrl")
- var lat = intent.getLongExtra("lat",0)
- var lon = intent.getLongExtra("lon",0) //经度
+ var lat = intent.getDoubleExtra("lat",0.0)
+ var lon = intent.getDoubleExtra("lon",0.0) //经度
Log.d("MarkerInfoReceiver", "type =" + type + "---->lat =" + lat + "----lon =" + lon + "---imageUrl =" + imageUrl)
EventBus.getDefault().post(MarkerInfo(type, imageUrl,lon, lat))
}
diff --git a/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/video/SimpleCoverVideoPlayer.kt b/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/video/SimpleCoverVideoPlayer.kt
index 02f0674e68..0a4ce844fd 100644
--- a/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/video/SimpleCoverVideoPlayer.kt
+++ b/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/video/SimpleCoverVideoPlayer.kt
@@ -52,6 +52,7 @@ class SimpleCoverVideoPlayer : StandardGSYVideoPlayer {
totalTime: Int
) {
super.setProgressAndTime(progress, secProgress, currentTime, totalTime)
+ Log.e("liyz", "setProgressAndTime progress = $progress --->currentTime = $currentTime --->totalTime = $totalTime")
if (progress != 0) {
mProgressBar.progress = progress
}
@@ -125,8 +126,17 @@ class SimpleCoverVideoPlayer : StandardGSYVideoPlayer {
override fun onClick(v: View?) {
super.onClick(v)
- }
+ v?.let {
+ when (v) {
+ start -> {
+ }
+ else -> {
+
+ }
+ }
+ }
+ }
override fun onPrepared() {
super.onPrepared()
diff --git a/modules/mogo-module-tanlu/src/main/res/drawable/small_video_seekbar_style.xml b/modules/mogo-module-tanlu/src/main/res/drawable/small_video_seekbar_style.xml
index 80f30fbb27..7d1914a68b 100644
--- a/modules/mogo-module-tanlu/src/main/res/drawable/small_video_seekbar_style.xml
+++ b/modules/mogo-module-tanlu/src/main/res/drawable/small_video_seekbar_style.xml
@@ -15,7 +15,12 @@
-
-
+
+
+
+
diff --git a/modules/mogo-module-tanlu/src/main/res/layout/tanlu_item_video_cover.xml b/modules/mogo-module-tanlu/src/main/res/layout/tanlu_item_video_cover.xml
index 362eb31478..15c0e8e2c8 100644
--- a/modules/mogo-module-tanlu/src/main/res/layout/tanlu_item_video_cover.xml
+++ b/modules/mogo-module-tanlu/src/main/res/layout/tanlu_item_video_cover.xml
@@ -37,7 +37,6 @@
android:layout_width="match_parent"
android:layout_height="@dimen/tanlu_module_full_bottom_height"
android:layout_alignParentBottom="true"
- android:layout_centerHorizontal="true"
android:layout_marginBottom="@dimen/tanlu_module_full_bottom_margin"
android:orientation="horizontal">
diff --git a/modules/mogo-module-tanlu/src/main/res/values-ldpi/dimens.xml b/modules/mogo-module-tanlu/src/main/res/values-ldpi/dimens.xml
index 345e90786e..4ca666a0be 100644
--- a/modules/mogo-module-tanlu/src/main/res/values-ldpi/dimens.xml
+++ b/modules/mogo-module-tanlu/src/main/res/values-ldpi/dimens.xml
@@ -26,7 +26,7 @@
352px
12px
- 32px
+ 31px
4px
1px
327px
diff --git a/modules/mogo-module-tanlu/src/main/res/values-xhdpi/dimens.xml b/modules/mogo-module-tanlu/src/main/res/values-xhdpi/dimens.xml
index 57993dcf50..f198f8152e 100644
--- a/modules/mogo-module-tanlu/src/main/res/values-xhdpi/dimens.xml
+++ b/modules/mogo-module-tanlu/src/main/res/values-xhdpi/dimens.xml
@@ -27,7 +27,7 @@
660px
24px
- 58px
+ 56px
8px
2px
613px
diff --git a/upload.sh b/upload.sh
index 16a2bafedb..b6c85e5845 100755
--- a/upload.sh
+++ b/upload.sh
@@ -17,3 +17,4 @@
./gradlew :modules:mogo-module-extensions:clean :modules:mogo-module-extensions:uploadArchives
./gradlew :modules:mogo-module-search:clean :modules:mogo-module-search:uploadArchives
./gradlew :modules:mogo-module-main:clean :modules:mogo-module-main:uploadArchives
+./gradlew :modules:mogo-module-back:clean :modules:mogo-module-back:uploadArchives