; }
-keep,allowobfuscation interface <1>
#-----ProtoBuf-----
--keep class com.google.protobuf.*{*;}
+-keep class com.google.protobuf.** {*;}
#-----GSYVideoPlayer-----
--keep class tv.danmaku.ijk.* { *; }
+-keep class com.shuyu.gsyvideoplayer.video.** { *; }
+-dontwarn com.shuyu.gsyvideoplayer.video.**
+-keep class com.shuyu.gsyvideoplayer.video.base.** { *; }
+-dontwarn com.shuyu.gsyvideoplayer.video.base.**
+-keep class com.shuyu.gsyvideoplayer.utils.** { *; }
+-dontwarn com.shuyu.gsyvideoplayer.utils.**
+-keep class tv.danmaku.ijk.** { *; }
-dontwarn tv.danmaku.ijk.**
--keep class com.shuyu.gsyvideoplayer.* { *; }
--dontwarn com.shuyu.gsyvideoplayer.**
#-----EventBus-----
-keepattributes *Annotation*
@@ -302,13 +330,16 @@
}
#-----ZhiDaoService-----
--keep class com.zhidao.auto.platform.*{*;}
--keep class com.zhidaohulian.*{*;}
--keep class com.zhidao.boot.*{*;}
--keep class com.elegant.*{*;}
--keep class com.zhidao.socketsdk.*{*;}
--keep class com.zhidao.ptech.*{*;}
--keep class com.zhidao.autopilot.support.*{*;}
+-keep class com.zhidao.auto.platform.**{*;}
+-keep class com.zhidaohulian.**{*;}
+-keep class com.zhidao.boot.**{*;}
+-keep class com.elegant.**{*;}
+-keep class com.zhidao.socketsdk.**{*;}
+-keep class com.zhidao.ptech.**{*;}
+-keep class com.zhidao.autopilotcore.**{*;}
+-keep class com.zhidao.autopilot.support.**{*;}
+-keep class com.zhidao.voice.library.**{*;}
+-keep class com.zhidao.voicesdk.**{*;}
diff --git a/app/src/main/java/com/mogo/launcher/MogoApplication.java b/app/src/main/java/com/mogo/launcher/MogoApplication.java
index 3449fdb765..0315d50b8a 100644
--- a/app/src/main/java/com/mogo/launcher/MogoApplication.java
+++ b/app/src/main/java/com/mogo/launcher/MogoApplication.java
@@ -2,6 +2,7 @@ package com.mogo.launcher;
import android.content.Context;
import android.content.Intent;
+import android.os.Build;
import android.util.Log;
import com.alibaba.android.arouter.launcher.ARouter;
@@ -9,6 +10,7 @@ import com.auto.zhidao.logsdk.CrashSystem;
import com.bytedance.boost_multidex.BoostMultiDex;
import com.mogo.commons.AbsMogoApplication;
import com.mogo.commons.debug.DebugConfig;
+import com.mogo.commons.storage.SpStorage;
import com.mogo.module.authorize.authprovider.invoke.AuthorizeConstant;
import com.mogo.module.carchatting.card.CallChatConstant;
import com.mogo.module.common.MogoModule;
@@ -89,6 +91,7 @@ public class MogoApplication extends AbsMogoApplication {
DebugConfig.setLauncher( BuildConfig.IS_LAUNCHER );
DebugConfig.setActiveAIAssistFlag( BuildConfig.AI_ASSIST_ACTIVE_STAUTS );
DebugConfig.setCarMachineType( BuildConfig.CAR_MACHINE_TYPE );
+ DebugConfig.setProductFlavor( BuildConfig.FLAVOR_product );
}
@Override
@@ -101,6 +104,7 @@ public class MogoApplication extends AbsMogoApplication {
@Override
public void onSuccess( String ticket ) {
Logger.d( TAG, "ticket = %s", ticket );
+ SpStorage.setTicket( ticket );
}
@Override
diff --git a/config.gradle b/config.gradle
index 555c961b34..db13c622d0 100644
--- a/config.gradle
+++ b/config.gradle
@@ -120,7 +120,7 @@ targetSdkVersion : 22,
mogomoduleauth : "com.mogo.module:module-authorize:${MOGO_MODULE_AUTHORIZE_VERSION}",
mogomoduleguide : "com.mogo.module:module-guide:${MOGO_MODULE_GUIDE_VERSION}",
// 长链
- socketsdk : 'com.zhidao.socketsdk:socketsdk:2.1.1',
+ socketsdk : 'com.zhidao.socketsdk:socketsdk:2.1.4',
socketsdkconnsvrprotoco : 'com.zhidao.ptech:connsvr-protoco:0.1.23',
socketsdkprotobufjava : 'com.google.protobuf:protobuf-java:3.5.1',
// OBU
@@ -169,9 +169,8 @@ targetSdkVersion : 22,
moduleleftpanelnoop : "com.mogo.module:module-left-panel-noop:${MOGO_MODULE_LEFT_PANEL_VERSION}",
// 闪屏页
modulesplash : "com.mogo.module:module-splash:${MOGO_MODULE_SPLASH_VERSION}",
-
// 基础服务实现
- mogobaseservicesdk : "com.mogo.base:services-apk:${MOGO_BASE_SERVICES_SDK_VERSION}",
- mogobaseserviceapk : "com.mogo.base:services-sdk:${MOGO_BASE_SERVICES_APK_VERSION}",
+ mogobaseservicesdk : "com.mogo.base:services-sdk:${MOGO_BASE_SERVICES_SDK_VERSION}",
+ mogobaseserviceapk : "com.mogo.base:services-apk:${MOGO_BASE_SERVICES_APK_VERSION}",
]
}
\ No newline at end of file
diff --git a/foudations/mogo-base-services-apk/src/main/java/com/mogo/base/services/socket/SocketManager.java b/foudations/mogo-base-services-apk/src/main/java/com/mogo/base/services/socket/SocketManager.java
index f2db841a0a..22e6fb427c 100644
--- a/foudations/mogo-base-services-apk/src/main/java/com/mogo/base/services/socket/SocketManager.java
+++ b/foudations/mogo-base-services-apk/src/main/java/com/mogo/base/services/socket/SocketManager.java
@@ -87,6 +87,10 @@ public class SocketManager implements IMogoSocketManager, OnSocketReceiveCallbac
}
@Override
+ public void onMessageReceived( byte[] content ) {
+ onMessageReceived( content, 0);
+ }
+
public void onMessageReceived( byte[] content, long msgId ) {
try {
MogoConnsvr.Payload payload = MogoConnsvr.Payload.parseFrom( content );
diff --git a/foudations/mogo-base-services-sdk/build.gradle b/foudations/mogo-base-services-sdk/build.gradle
index c8ab6808a3..31f35d96b5 100644
--- a/foudations/mogo-base-services-sdk/build.gradle
+++ b/foudations/mogo-base-services-sdk/build.gradle
@@ -30,11 +30,11 @@ dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation rootProject.ext.dependencies.arouter
// 上报位置
- implementation 'com.zhidao.locupload:loc-upload-sdk:1.0.6'
+ implementation 'com.zhidao.locupload:loc-upload-sdk:1.0.9'
// 长链
- implementation 'com.zhidao.socket:built-in-socket:1.0.12'
+ implementation 'com.zhidao.socket:built-in-socket:1.0.13'
// passport
- implementation 'com.zhidao.tcloginsdk:tclogin:1.0.7'
+ implementation 'com.zhidao.loginsdk:external:1.0.0'
annotationProcessor 'com.elegant.spi:compiler:1.0.3'
diff --git a/foudations/mogo-base-services-sdk/consumer-rules.pro b/foudations/mogo-base-services-sdk/consumer-rules.pro
index e69de29bb2..e4c27a022e 100644
--- a/foudations/mogo-base-services-sdk/consumer-rules.pro
+++ b/foudations/mogo-base-services-sdk/consumer-rules.pro
@@ -0,0 +1,2 @@
+#-----MogoBaseServiceSdk-----
+-keep class com.mogo.base.services.locationinfo.MogoLocationSource.*{*;}
\ No newline at end of file
diff --git a/foudations/mogo-base-services-sdk/gradle.properties b/foudations/mogo-base-services-sdk/gradle.properties
index a753d03b00..ce31a0de78 100644
--- a/foudations/mogo-base-services-sdk/gradle.properties
+++ b/foudations/mogo-base-services-sdk/gradle.properties
@@ -1,3 +1,3 @@
-GROUP=com.mogo.connection
-POM_ARTIFACT_ID=mogo-base-services-sdk
-VERSION_CODE=1
+GROUP=com.mogo.base
+POM_ARTIFACT_ID=services-sdk
+VERSION_CODE=1
\ No newline at end of file
diff --git a/foudations/mogo-base-services-sdk/proguard-rules.pro b/foudations/mogo-base-services-sdk/proguard-rules.pro
index 481bb43481..ba8f820823 100644
--- a/foudations/mogo-base-services-sdk/proguard-rules.pro
+++ b/foudations/mogo-base-services-sdk/proguard-rules.pro
@@ -18,4 +18,7 @@
# If you keep the line number information, uncomment this to
# hide the original source file name.
-#-renamesourcefileattribute SourceFile
\ No newline at end of file
+#-renamesourcefileattribute SourceFile
+
+#-----MogoBaseServiceSdk-----
+-keep class com.mogo.base.services.locationinfo.MogoLocationSource.*{*;}
\ No newline at end of file
diff --git a/foudations/mogo-base-services-sdk/src/main/java/com/mogo/base/services/passport/PassportManager.java b/foudations/mogo-base-services-sdk/src/main/java/com/mogo/base/services/passport/PassportManager.java
index 184b63c7a6..b5afd9df17 100644
--- a/foudations/mogo-base-services-sdk/src/main/java/com/mogo/base/services/passport/PassportManager.java
+++ b/foudations/mogo-base-services-sdk/src/main/java/com/mogo/base/services/passport/PassportManager.java
@@ -11,8 +11,7 @@ import com.mogo.service.passport.IMogoTicketCallback;
import com.mogo.utils.logger.Logger;
import com.zhidao.accountsdk.manager.CarPadClientManagerImpl;
import com.zhidao.accountsdk.manager.TicketInfoCallback;
-import com.zhidao.accountsdk.network.NetEnvironManager;
-import com.zhidao.tcloginsdk.ToCLoginManagerImpl;
+import com.zhidao.tcloginsdk.LoginManagerImpl;
public
/**
@@ -95,7 +94,8 @@ class PassportManager implements IMogoPassportManager {
// 演示环境用 qa 的
mode = DebugConfig.NET_MODE_QA;
}
- ToCLoginManagerImpl.getInstance( context ).setNetEnviron( mode );
- ToCLoginManagerImpl.getInstance( context ).showLoginView();
+ LoginManagerImpl.getInstance(mContext).setClientType(DebugConfig.getProductFlavor());
+ LoginManagerImpl.getInstance( context ).setNetEnviron( mode );
+ LoginManagerImpl.getInstance( context ).showLoginView();
}
}
diff --git a/foudations/mogo-base-services-sdk/src/main/java/com/mogo/base/services/socket/SocketManager.java b/foudations/mogo-base-services-sdk/src/main/java/com/mogo/base/services/socket/SocketManager.java
index cc3574b3bc..cd588b0434 100644
--- a/foudations/mogo-base-services-sdk/src/main/java/com/mogo/base/services/socket/SocketManager.java
+++ b/foudations/mogo-base-services-sdk/src/main/java/com/mogo/base/services/socket/SocketManager.java
@@ -87,6 +87,7 @@ class SocketManager implements IMogoSocketManager, Callback {
.setEnvironment( getEnvironment() )
.setClient( Platform.getClient( Platform.car ) )
.setAppId( appId )
+ .setOpenAnalytics( true )
.setDebug( DebugConfig.isDebug() );
SocketMessageDispatcher.getInstance().start( context );
}
diff --git a/foudations/mogo-commons/build.gradle b/foudations/mogo-commons/build.gradle
index 846b3ad4b3..0f2fc4036c 100644
--- a/foudations/mogo-commons/build.gradle
+++ b/foudations/mogo-commons/build.gradle
@@ -22,9 +22,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/foudations/mogo-commons/consumer-rules.pro b/foudations/mogo-commons/consumer-rules.pro
index 89e45961cb..e4e113ccaf 100644
--- a/foudations/mogo-commons/consumer-rules.pro
+++ b/foudations/mogo-commons/consumer-rules.pro
@@ -1,2 +1,6 @@
#-----Foundation-Commons-----
--keep class com.mogo.commons.data.BaseData.*{*;}
\ No newline at end of file
+-keep class com.mogo.commons.data.BaseData.*{*;}
+-keep class com.mogo.commons.voice.VoiceIntentTrack
+-keep class com.mogo.commons.voice.VoiceTrack
+-keep class com.mogo.commons.voice.VoicePreemptType
+-keep interface * implements com.mogo.commons.mvp.IView
\ No newline at end of file
diff --git a/foudations/mogo-commons/proguard-rules.pro b/foudations/mogo-commons/proguard-rules.pro
index 31bc92ec67..c47b3c8771 100644
--- a/foudations/mogo-commons/proguard-rules.pro
+++ b/foudations/mogo-commons/proguard-rules.pro
@@ -21,4 +21,8 @@
#-renamesourcefileattribute SourceFile
#-----Foundation-Commons-----
--keep class com.mogo.commons.data.BaseData.*{*;}
\ No newline at end of file
+-keep class com.mogo.commons.data.BaseData.*{*;}
+-keep class com.mogo.commons.voice.VoiceIntentTrack
+-keep class com.mogo.commons.voice.VoiceTrack
+-keep class com.mogo.commons.voice.VoicePreemptType
+-keep interface * implements com.mogo.commons.mvp.IView
\ No newline at end of file
diff --git a/foudations/mogo-commons/src/main/java/com/mogo/commons/debug/DebugConfig.java b/foudations/mogo-commons/src/main/java/com/mogo/commons/debug/DebugConfig.java
index 02050a9be2..4ef12b6383 100644
--- a/foudations/mogo-commons/src/main/java/com/mogo/commons/debug/DebugConfig.java
+++ b/foudations/mogo-commons/src/main/java/com/mogo/commons/debug/DebugConfig.java
@@ -82,6 +82,7 @@ public class DebugConfig {
public static final int CAR_MACHINE_TYPE_BYD = 1;
private static int sCarMachineType = CAR_MACHINE_TYPE_SELF_INNOVATE;
+
/**
* 获取网络环境类型
*
@@ -150,17 +151,19 @@ public class DebugConfig {
/**
* 设置当前车机类型
+ *
* @param type {@link #CAR_MACHINE_TYPE_SELF_INNOVATE} {@link #CAR_MACHINE_TYPE_BYD}
*/
- public static void setCarMachineType(int type) {
+ public static void setCarMachineType( int type ) {
sCarMachineType = type;
}
/**
* 获取当前车机类型
+ *
* @return {@link #CAR_MACHINE_TYPE_SELF_INNOVATE} {@link #CAR_MACHINE_TYPE_BYD}
*/
- public static int getCarMachineType(){
+ public static int getCarMachineType() {
return sCarMachineType;
}
@@ -209,4 +212,19 @@ public class DebugConfig {
public static boolean isUseMockObuData() {
return useMockObuData;
}
+
+ private static String sProductFlavor;
+
+ public static String getProductFlavor() {
+ return sProductFlavor;
+ }
+
+ /**
+ * 产品线
+ *
+ * @param sProductFlavor
+ */
+ public static void setProductFlavor( String sProductFlavor ) {
+ DebugConfig.sProductFlavor = sProductFlavor;
+ }
}
diff --git a/foudations/mogo-connection/.gitignore b/foudations/mogo-connection/.gitignore
deleted file mode 100644
index 796b96d1c4..0000000000
--- a/foudations/mogo-connection/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/build
diff --git a/foudations/mogo-connection/build.gradle b/foudations/mogo-connection/build.gradle
deleted file mode 100644
index db342def5f..0000000000
--- a/foudations/mogo-connection/build.gradle
+++ /dev/null
@@ -1,49 +0,0 @@
-apply plugin: 'com.android.library'
-apply plugin: 'com.alibaba.arouter'
-
-android {
- compileSdkVersion rootProject.ext.android.compileSdkVersion
- // buildToolsVersion rootProject.ext.android.buildToolsVersion
- defaultConfig {
- minSdkVersion rootProject.ext.android.minSdkVersion
- targetSdkVersion rootProject.ext.android.targetSdkVersion
- versionCode Integer.valueOf(VERSION_CODE)
- versionName getValueFromRootProperties("${project.name.replace("-", "_").toUpperCase()}_VERSION")
-
- testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
- consumerProguardFiles 'consumer-rules.pro'
-
- javaCompileOptions {
- annotationProcessorOptions {
- arguments = [AROUTER_MODULE_NAME: project.getName()]
- }
- }
- }
-
- buildTypes {
- release {
- minifyEnabled false
- proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
- }
- }
-}
-
-dependencies {
- implementation fileTree(dir: 'libs', include: ['*.jar'])
-
- api rootProject.ext.dependencies.socketsdk
- api rootProject.ext.dependencies.socketsdkconnsvrprotoco
- api rootProject.ext.dependencies.socketsdkprotobufjava
- implementation rootProject.ext.dependencies.arouter
- annotationProcessor rootProject.ext.dependencies.aroutercompiler
-
- if (Boolean.valueOf(RELEASE)) {
- implementation rootProject.ext.dependencies.mogoutils
- implementation rootProject.ext.dependencies.mogoserviceapi
- } else {
- implementation project(":foudations:mogo-utils")
- implementation project(":services:mogo-service-api")
- }
-}
-
-apply from: new File(rootProject.rootDir, "gradle/upload.gradle").toString()
diff --git a/foudations/mogo-connection/consumer-rules.pro b/foudations/mogo-connection/consumer-rules.pro
deleted file mode 100644
index e69de29bb2..0000000000
diff --git a/foudations/mogo-connection/gradle.properties b/foudations/mogo-connection/gradle.properties
deleted file mode 100644
index 3bf188938f..0000000000
--- a/foudations/mogo-connection/gradle.properties
+++ /dev/null
@@ -1,3 +0,0 @@
-GROUP=com.mogo.connection
-POM_ARTIFACT_ID=mogo-connection
-VERSION_CODE=1
diff --git a/foudations/mogo-connection/proguard-rules.pro b/foudations/mogo-connection/proguard-rules.pro
deleted file mode 100644
index f1b424510d..0000000000
--- a/foudations/mogo-connection/proguard-rules.pro
+++ /dev/null
@@ -1,21 +0,0 @@
-# Add project specific ProGuard rules here.
-# You can control the set of applied configuration files using the
-# proguardFiles setting in build.gradle.
-#
-# For more details, see
-# http://developer.android.com/guide/developing/tools/proguard.html
-
-# If your project uses WebView with JS, uncomment the following
-# and specify the fully qualified class name to the JavaScript interface
-# class:
-#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
-# public *;
-#}
-
-# Uncomment this to preserve the line number information for
-# debugging stack traces.
-#-keepattributes SourceFile,LineNumberTable
-
-# If you keep the line number information, uncomment this to
-# hide the original source file name.
-#-renamesourcefileattribute SourceFile
diff --git a/foudations/mogo-connection/src/main/AndroidManifest.xml b/foudations/mogo-connection/src/main/AndroidManifest.xml
deleted file mode 100644
index 639efc7d99..0000000000
--- a/foudations/mogo-connection/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1,2 +0,0 @@
-
diff --git a/foudations/mogo-connection/src/main/java/com/mogo/connection/socket/SocketManager.java b/foudations/mogo-connection/src/main/java/com/mogo/connection/socket/SocketManager.java
deleted file mode 100644
index 2faf7b6bed..0000000000
--- a/foudations/mogo-connection/src/main/java/com/mogo/connection/socket/SocketManager.java
+++ /dev/null
@@ -1,223 +0,0 @@
-package com.mogo.connection.socket;
-
-import android.content.Context;
-
-import com.google.protobuf.ByteString;
-import com.google.protobuf.InvalidProtocolBufferException;
-import com.mogo.map.listener.IMogoMapListener;
-import com.mogo.service.connection.IMessageResponse;
-import com.mogo.service.connection.IMogoMsgAckListener;
-import com.mogo.service.connection.IMogoOnMessageListener;
-import com.mogo.service.connection.IMogoSocketManager;
-import com.mogo.service.connection.MsgBody;
-import com.mogo.utils.logger.Logger;
-import com.mogo.utils.network.utils.GsonUtil;
-import com.zhidao.ptech.connsvr.commom.protocol.MogoCommon;
-import com.zhidao.ptech.connsvr.protocol.MogoConnsvr;
-import com.zhidao.socketsdk.manager.OnSocketAckCallback;
-import com.zhidao.socketsdk.manager.OnSocketReceiveCallback;
-import com.zhidao.socketsdk.manager.SocketConnManager;
-import com.zhidao.socketsdk.manager.SocketConnManagerImpl;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
-
-/**
- * @author congtaowang
- * @since 2019-12-31
- *
- * 长链实现:基于 netty
- */
-
-public class SocketManager implements IMogoSocketManager, OnSocketReceiveCallback, OnSocketAckCallback {
-
- private static final String TAG = "SocketManager";
-
- public static final int MSG_PRODUCT_LINE = MogoCommon.Product.mogoBussiness_VALUE;
- private static final int MSG_HEADER_TYPE = MogoConnsvr.MsgType.mogoMsgTypeDispatchSvrNoRspReq_VALUE;
-
- private static volatile SocketManager sInstance;
-
- private SocketManager( Context context ) {
- mSocketConnManager = SocketConnManagerImpl.getInstance( context );
- mSocketConnManager.addSocketMessageCallback( this );
- mSocketConnManager.addSocketAckCallback( this );
- }
-
- public static SocketManager getInstance( Context context ) {
- if ( sInstance == null ) {
- synchronized ( SocketManager.class ) {
- if ( sInstance == null ) {
- sInstance = new SocketManager( context );
- }
- }
- }
- return sInstance;
- }
-
- /**
- * 管理消息分发
- *
- * key - msgType
- */
- private Map< Integer, List< IMogoOnMessageListener > > mListeners = new ConcurrentHashMap<>();
-
- /**
- * 管理消息回执
- *
- * key - msgId
- */
- private Map< Long, IMogoMsgAckListener > mAckListeners = new ConcurrentHashMap<>();
-
-
- private SocketConnManager mSocketConnManager;
- public static final int MAX_CAP = 64; //保证充足的容量应对非常延时的推送
- private ArrayList< Long > mReceivedMsgId = new ArrayList<>( MAX_CAP );
- private int mCurrentIndex = 0;
-
- @Override
- public void init( Context context, String appId ) {
- if ( mSocketConnManager != null ) {
- mSocketConnManager.init( appId );
- }
- }
-
- @Override
- public void onMessageReceived( byte[] content, long msgId ) {
- try {
- MogoConnsvr.Payload payload = MogoConnsvr.Payload.parseFrom( content );
- int msgType = payload.getMsgType();
- Logger.d( TAG, "received msg type = %d", msgType );
- List< IMogoOnMessageListener > listeners = mListeners.get( msgType );
- if ( listeners != null && !listeners.isEmpty() ) {
- Iterator< IMogoOnMessageListener > iterator = listeners.iterator();
- if ( msgId != 0 ) { //兼容老版本
- if ( mReceivedMsgId.contains( msgId ) ) { // 避免消息重发
- return;
- }
- cacheLastReceivedMsgId( msgId );
- }
- Object object = null;
- while ( iterator.hasNext() ) {
- IMogoOnMessageListener listener = iterator.next();
- if ( object == null ) {
- object = GsonUtil.objectFromJson( payload.getPayload().toStringUtf8(), listener.target() );
- }
- if ( listener != null ) {
- Logger.d( TAG, "received msgId = %s, content = %s", msgId, payload.getPayload().toStringUtf8() );
- listener.onMsgReceived( object );
- }
- }
- }
- } catch ( InvalidProtocolBufferException e ) {
- Logger.e( TAG, e, "parse msg error." );
- }
- }
-
- private void cacheLastReceivedMsgId( long msgId ) {
- if ( msgId == 0 ) {
- return;
- }
- synchronized ( this ){
- mReceivedMsgId.add( mCurrentIndex % MAX_CAP, msgId );
- mCurrentIndex++;
- }
- }
-
- @Override
- public void onAck( byte[] headerBytes, byte[] payloadBytes ) {
- try {
- MogoConnsvr.Header header = MogoConnsvr.Header.parseFrom( headerBytes );
- int msgType = header.getMsgType();
- String appId = header.getAppId();
- int productLine = header.getProductLine();
- long msgId = header.getMsgId();
- IMogoMsgAckListener listener = mAckListeners.remove( msgId );
- if ( listener != null ) {
- listener.onAck( msgId );
- }
- Logger.d( TAG, "send message success: msgType = %d, appId = %s, productLine = %d", msgType, appId, productLine );
- } catch ( InvalidProtocolBufferException e ) {
- e.printStackTrace();
- }
- }
-
- @Override
- public void registerOnMessageListener( int msgType, IMogoOnMessageListener listener ) {
- if ( mListeners.containsKey( msgType ) ) {
- Logger.w( TAG, "msgType %d is exist.", msgType );
- }
- if ( !mListeners.containsKey( msgType ) ) {
- mListeners.put( msgType, new ArrayList< IMogoOnMessageListener >() );
- }
- mListeners.get( msgType ).add( listener );
- }
-
- @Override
- public void unregisterOnMessageListener( int msgType ) {
- mListeners.remove( msgType );
- }
-
- @Override
- public void unregisterOnMessageListener( int msgType, IMogoOnMessageListener listener ) {
- if ( listener == null ) {
- return;
- }
- if ( !mListeners.containsKey( msgType ) ) {
- return;
- }
- List< IMogoOnMessageListener > listeners = mListeners.get( msgType );
- if ( listeners != null && listeners.contains( listener ) ) {
- listeners.remove( listener );
- }
- }
-
- @Override
- public void sendMsg( MsgBody body, IMogoMsgAckListener listener ) {
- Logger.d( TAG, "sendMsg." );
- if ( mSocketConnManager != null ) {
- if ( mSocketConnManager.isConnected() ) {
- Logger.d( TAG, "isConnected." );
- final byte[] pb = convertToPBBytes( body.getMsgType(), objectToBytes( body.getContent() ) );
- mSocketConnManager.sendPayload(
- MSG_PRODUCT_LINE,
- pb,
- MSG_HEADER_TYPE,
- body.isAck(),
- body.getMsgId()
- );
- mAckListeners.put( body.getMsgId(), listener );
- } else {
- Logger.e( TAG, "sendMsg error, connect is lost." );
- }
- } else {
- Logger.e( TAG, "sendMsg error, client is null." );
- }
- }
-
- public byte[] objectToBytes( Object obj ) {
- String jsonStr = GsonUtil.jsonFromObject( obj );
- return jsonStr.getBytes();
- }
-
- private byte[] convertToPBBytes( int msgType, byte[] payloadBytes ) {
- MogoConnsvr.Payload payloadData = MogoConnsvr.Payload.newBuilder()
- .setMsgType( msgType )
- .setPayload( ByteString.copyFrom( payloadBytes ) ).build();
- return payloadData.toByteArray();
- }
-
- public synchronized void release() {
- mListeners.clear();
- mListeners = null;
- sInstance = null;
- }
-
-
- @Override
- public void init( Context context ) {
- }
-}
diff --git a/foudations/mogo-connection/src/main/res/values/strings.xml b/foudations/mogo-connection/src/main/res/values/strings.xml
deleted file mode 100644
index b965c02986..0000000000
--- a/foudations/mogo-connection/src/main/res/values/strings.xml
+++ /dev/null
@@ -1,3 +0,0 @@
-
- mogo-connection
-
diff --git a/foudations/mogo-utils/consumer-rules.pro b/foudations/mogo-utils/consumer-rules.pro
index e69de29bb2..8deab7089d 100644
--- a/foudations/mogo-utils/consumer-rules.pro
+++ b/foudations/mogo-utils/consumer-rules.pro
@@ -0,0 +1,5 @@
+#-----MogoUtils-----
+-keep class com.mogo.utils.network.CallerType
+-keep class com.mogo.utils.network.CallerRestrictTo
+-keep class com.mogo.utils.glide.GlideRoundedCornersTransform.CornerType
+-keep class com.mogo.utils.logger.LogLevel
\ No newline at end of file
diff --git a/foudations/mogo-utils/proguard-rules.pro b/foudations/mogo-utils/proguard-rules.pro
index f1b424510d..664ac30532 100644
--- a/foudations/mogo-utils/proguard-rules.pro
+++ b/foudations/mogo-utils/proguard-rules.pro
@@ -19,3 +19,9 @@
# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
+
+#-----MogoUtils-----
+-keep class com.mogo.utils.network.CallerType
+-keep class com.mogo.utils.network.CallerRestrictTo
+-keep class com.mogo.utils.glide.GlideRoundedCornersTransform.CornerType
+-keep class com.mogo.utils.logger.LogLevel
\ No newline at end of file
diff --git a/foudations/mogo-utils/src/main/java/com/mogo/utils/sqlite/BaseDaoFactory.kt b/foudations/mogo-utils/src/main/java/com/mogo/utils/sqlite/BaseDaoFactory.kt
index 40338552b3..605043bf5a 100644
--- a/foudations/mogo-utils/src/main/java/com/mogo/utils/sqlite/BaseDaoFactory.kt
+++ b/foudations/mogo-utils/src/main/java/com/mogo/utils/sqlite/BaseDaoFactory.kt
@@ -13,7 +13,7 @@ import com.mogo.utils.sqlite.proxy.BaseDaoProxyLog
open class BaseDaoFactory {
//默认数据库名称
- private var dbName = "AppSQLite.db"
+ private var dbName = "MoGoSQLite.db"
companion object {
//单利工厂
diff --git a/gradle.properties b/gradle.properties
index 384155d27d..3c4c014176 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -29,39 +29,40 @@ PASSWORD=xintai2018
RELEASE=false
# 模块版本
## 工程内模块
-MOGO_COMMONS_VERSION=1.2.1.17
-MOGO_UTILS_VERSION=1.2.1.17
-MAP_AMAP_VERSION=1.2.1.17
-MAP_AUTONAVI_VERSION=1.2.1.17
-MOGO_MAP_VERSION=1.2.1.17
-MOGO_MAP_API_VERSION=1.2.1.17
-MOGO_SERVICE_VERSION=1.2.1.17
-MOGO_SERVICE_API_VERSION=1.2.1.17
-MOGO_CONNECTION_VERSION=1.2.1.17
-MOGO_MODULE_APPS_VERSION=1.2.1.17
-MOGO_MODULE_NAVI_VERSION=1.2.1.17
-MOGO_MODULE_SHARE_VERSION=1.2.1.17
-MOGO_MODULE_COMMON_VERSION=1.2.1.17
-MOGO_MODULE_MAIN_VERSION=1.2.1.17
-MOGO_MODULE_MAP_VERSION=1.2.1.17
-MOGO_MODULE_SERVICE_VERSION=1.2.1.17
-MOGO_MODULE_EXTENSIONS_VERSION=1.2.1.17
-MOGO_MODULE_SEARCH_VERSION=1.2.1.17
-MOGO_MODULE_BACK_VERSION=1.2.1.17
-MOGO_MODULE_GPS_SIMULATOR_VERSION=1.2.1.17
-MOGO_MODULE_GPS_SIMULATOR_DEBUG_VERSION=1.2.1.17
-MOGO_MODULE_GPS_SIMULATOR_NOOP_VERSION=1.2.1.17
-MOGO_MODULE_AUTHORIZE_VERSION=1.2.1.17
-MOGO_MODULE_GUIDE_VERSION=1.2.1.17
-MOGO_MODULE_MEDIA_VERSION=1.2.1.17
-MOGO_MODULE_MAIN_LAUNCHER_VERSION = 1.2.1.17
-MOGO_MODULE_MAIN_INDEPENDENT_VERSION = 1.2.1.17
+MOGO_COMMONS_VERSION=1.2.1.20
+MOGO_UTILS_VERSION=1.2.1.20
+MAP_AMAP_VERSION=1.2.1.20
+MAP_AUTONAVI_VERSION=1.2.1.20
+MOGO_MAP_VERSION=1.2.1.20
+MOGO_MAP_API_VERSION=1.2.1.20
+MOGO_SERVICE_VERSION=1.2.1.20
+MOGO_SERVICE_API_VERSION=1.2.1.20
+MOGO_CONNECTION_VERSION=1.2.1.20
+MOGO_MODULE_APPS_VERSION=1.2.1.20
+MOGO_MODULE_NAVI_VERSION=1.2.1.20
+MOGO_MODULE_SHARE_VERSION=1.2.1.20
+MOGO_MODULE_COMMON_VERSION=1.2.1.20
+MOGO_MODULE_MAIN_VERSION=1.2.1.20
+MOGO_MODULE_MAP_VERSION=1.2.1.20
+MOGO_MODULE_SERVICE_VERSION=1.2.1.21
+MOGO_MODULE_EXTENSIONS_VERSION=1.2.1.20
+MOGO_MODULE_SEARCH_VERSION=1.2.1.20
+MOGO_MODULE_BACK_VERSION=1.2.1.20
+MOGO_MODULE_GPS_SIMULATOR_VERSION=1.2.1.20
+MOGO_MODULE_GPS_SIMULATOR_DEBUG_VERSION=1.2.1.20
+MOGO_MODULE_GPS_SIMULATOR_NOOP_VERSION=1.2.1.20
+MOGO_MODULE_AUTHORIZE_VERSION=1.2.1.20
+MOGO_MODULE_GUIDE_VERSION=1.2.1.20
+MOGO_MODULE_MEDIA_VERSION=1.2.1.20
+MOGO_MODULE_MAIN_LAUNCHER_VERSION = 1.2.1.20
+MOGO_MODULE_MAIN_INDEPENDENT_VERSION = 1.2.1.20
+MOGO_MODULE_V2X_VERSION=1.2.1.20
## 工程外部模块
# 探路
-MOGO_MODULE_TANLU_VERSION=1.3.0.10
+MOGO_MODULE_TANLU_VERSION=1.3.0.19
# 车聊聊
-CARCHATTING_VERSION=1.4.4
+CARCHATTING_VERSION=1.4.6
# 车聊聊接口
CARCHATTINGPROVIDER_VERSION=1.3.4
# 视频引导
@@ -70,8 +71,6 @@ MOGO_MODULE_GUIDESHOW_VERSION=1.0.2-SNAPSHOT
MOGO_MODULE_GUIDESHOW_PROVIDER_VERSION=1.0.2-SNAPSHOT
# 在线车辆F
MOGO_MODULE_ONLINECAR_VERSION=1.0.3.2
-# v2x
-MOGO_MODULE_V2X_VERSION=1.3.1
# 推送
MOGO_MODULE_PUSH_VERSION=1.1.5.7
MOGO_MODULE_PUSH_BASE_VERSION=1.1.5.5
@@ -79,7 +78,7 @@ MOGO_MODULE_PUSH_NOOP_VERSION=1.1.5.6
# 广告资源位
MOGO_MODULE_AD_CARD_VERSION=1.0.1
# 探路上报和分享模块
-TANLULIB_VERSION=1.3.0.10
+TANLULIB_VERSION=1.3.0.19
MOGO_MODULE_EVENT_PANEL_VERSION = 1.0.0-SNAPSHOT
MOGO_MODULE_EVENT_PANEL_NOOP_VERSION = 1.0.0-SNAPSHOT
#左侧面板模块
diff --git a/libraries/map-amap/build.gradle b/libraries/map-amap/build.gradle
index 7a544f1602..780c7af6f6 100644
--- a/libraries/map-amap/build.gradle
+++ b/libraries/map-amap/build.gradle
@@ -15,9 +15,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/libraries/map-amap/consumer-rules.pro b/libraries/map-amap/consumer-rules.pro
index ca417b30e0..11e9ffd54b 100644
--- a/libraries/map-amap/consumer-rules.pro
+++ b/libraries/map-amap/consumer-rules.pro
@@ -1,2 +1,5 @@
#-----library-MapAMap-----
--keep class com.mogo.map.impl.amap.hook.BnHooker.*{*;}
\ No newline at end of file
+-keep class com.mogo.map.impl.amap.hook.BnHooker.*{*;}
+-keep class com.mogo.map.impl.amap.marker.CombineMovingPointOverlay.Status
+-keep class com.mogo.map.impl.amap.navi.PathPlanningErrorCodeConstants
+-keep class com.mogo.map.impl.amap.utils.MapStyleUtils.ColorEnum
\ No newline at end of file
diff --git a/libraries/map-amap/proguard-rules.pro b/libraries/map-amap/proguard-rules.pro
index 7ecfa157e5..7959227525 100644
--- a/libraries/map-amap/proguard-rules.pro
+++ b/libraries/map-amap/proguard-rules.pro
@@ -21,4 +21,7 @@
#-renamesourcefileattribute SourceFile
#-----library-MapAMap-----
--keep class com.mogo.map.impl.amap.hook.BnHooker.*{*;}
\ No newline at end of file
+-keep class com.mogo.map.impl.amap.hook.BnHooker.*{*;}
+-keep class com.mogo.map.impl.amap.marker.CombineMovingPointOverlay.Status
+-keep class com.mogo.map.impl.amap.navi.PathPlanningErrorCodeConstants
+-keep class com.mogo.map.impl.amap.utils.MapStyleUtils.ColorEnum
\ No newline at end of file
diff --git a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/marker/AMapMarkerWrapper.java b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/marker/AMapMarkerWrapper.java
index c373965b87..8935812bcd 100644
--- a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/marker/AMapMarkerWrapper.java
+++ b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/marker/AMapMarkerWrapper.java
@@ -10,7 +10,9 @@ import com.amap.api.maps.model.BitmapDescriptorFactory;
import com.amap.api.maps.model.LatLng;
import com.amap.api.maps.model.Marker;
import com.amap.api.maps.model.MarkerOptions;
+import com.amap.api.maps.model.animation.AlphaAnimation;
import com.amap.api.maps.model.animation.Animation;
+import com.amap.api.maps.model.animation.AnimationSet;
import com.amap.api.maps.model.animation.ScaleAnimation;
import com.amap.api.maps.model.animation.TranslateAnimation;
import com.amap.api.maps.utils.overlay.MovingPointOverlay;
@@ -382,6 +384,47 @@ public class AMapMarkerWrapper implements IMogoMarker, Observer {
mMarker.startAnimation();
}
+ @Override
+ public void startScaleAnimationWithAlpha( float fromX, float toX, float fromY, float toY, float fromAlpha, float toAlpha, int duration, Interpolator interpolator, OnMarkerAnimationListener listener ) {
+ if ( isDestroyed() ) {
+ return;
+ }
+
+ ScaleAnimation animationScale = new ScaleAnimation( fromX, toX, fromY, toY );
+ animationScale.setFillMode( Animation.FILL_MODE_FORWARDS );
+
+ AlphaAnimation alphaAnimation = new AlphaAnimation( fromAlpha, toAlpha );
+ alphaAnimation.setFillMode( Animation.FILL_MODE_FORWARDS );
+
+ AnimationSet animationSet = new AnimationSet( true );
+ animationSet.setDuration( duration );
+ animationSet.setInterpolator( interpolator);
+ animationSet.setAnimationListener( new Animation.AnimationListener() {
+ @Override
+ public void onAnimationStart() {
+ if ( isDestroyed() ) {
+ return;
+ }
+ if ( listener != null ) {
+ listener.onAnimStart();
+ }
+ }
+
+ @Override
+ public void onAnimationEnd() {
+ if ( isDestroyed() ) {
+ return;
+ }
+ if ( listener != null ) {
+ listener.onAnimEnd();
+ }
+ }
+ } );
+
+ mMarker.setAnimation( animationSet );
+ mMarker.startAnimation();
+ }
+
@Override
public void startJumpAnimation( float high, long duration, Interpolator interpolator, OnMarkerAnimationListener listener ) {
if ( isDestroyed() || high <= 0.0f || interpolator == null || duration < 0 ) {
diff --git a/libraries/mogo-map-api/build.gradle b/libraries/mogo-map-api/build.gradle
index c3702d08cf..cac5399ae1 100644
--- a/libraries/mogo-map-api/build.gradle
+++ b/libraries/mogo-map-api/build.gradle
@@ -15,9 +15,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/libraries/mogo-map-api/consumer-rules.pro b/libraries/mogo-map-api/consumer-rules.pro
index 09dc3bb755..0bd44f06e8 100644
--- a/libraries/mogo-map-api/consumer-rules.pro
+++ b/libraries/mogo-map-api/consumer-rules.pro
@@ -1,2 +1,2 @@
#-----library-MapApi----
--keep class com.mogo.map.search.geo.MogoRegeocodeResult.*{*;}
\ No newline at end of file
+-keep class com.mogo.map.**{*;}
\ No newline at end of file
diff --git a/libraries/mogo-map-api/proguard-rules.pro b/libraries/mogo-map-api/proguard-rules.pro
index 162887db27..9ce36f6363 100644
--- a/libraries/mogo-map-api/proguard-rules.pro
+++ b/libraries/mogo-map-api/proguard-rules.pro
@@ -21,4 +21,4 @@
#-renamesourcefileattribute SourceFile
#-----library-MapApi----
--keep class com.mogo.map.search.geo.MogoRegeocodeResult.*{*;}
\ No newline at end of file
+-keep class com.mogo.map.**{*;}
\ No newline at end of file
diff --git a/libraries/mogo-map-api/src/main/java/com/mogo/map/marker/IMogoMarker.java b/libraries/mogo-map-api/src/main/java/com/mogo/map/marker/IMogoMarker.java
index 7cb519b426..8301124d8b 100644
--- a/libraries/mogo-map-api/src/main/java/com/mogo/map/marker/IMogoMarker.java
+++ b/libraries/mogo-map-api/src/main/java/com/mogo/map/marker/IMogoMarker.java
@@ -267,9 +267,33 @@ public interface IMogoMarker {
Interpolator interpolator,
OnMarkerAnimationListener listener );
+ /**
+ * 缩放动画
+ *
+ * @param fromX
+ * @param toX
+ * @param fromY
+ * @param toY
+ * @param fromAlpha
+ * @param toAlpha
+ * @param duration
+ * @param interpolator
+ * @param listener
+ */
+ void startScaleAnimationWithAlpha( float fromX,
+ float toX,
+ float fromY,
+ float toY,
+ float fromAlpha,
+ float toAlpha,
+ int duration,
+ Interpolator interpolator,
+ OnMarkerAnimationListener listener );
+
/**
* 弹跳动画
+ *
* @param high
* @param duration
* @param interpolator
@@ -278,7 +302,7 @@ public interface IMogoMarker {
void startJumpAnimation( float high,
long duration,
Interpolator interpolator,
- OnMarkerAnimationListener listener);
+ OnMarkerAnimationListener listener );
/**
* 是否是否可点击
diff --git a/libraries/mogo-map/consumer-rules.pro b/libraries/mogo-map/consumer-rules.pro
index e69de29bb2..a742829747 100644
--- a/libraries/mogo-map/consumer-rules.pro
+++ b/libraries/mogo-map/consumer-rules.pro
@@ -0,0 +1,4 @@
+#-----MogoMap-----
+-keep class com.mogo.map.MogoNavi{
+ private ();
+}
\ No newline at end of file
diff --git a/libraries/mogo-map/proguard-rules.pro b/libraries/mogo-map/proguard-rules.pro
index f1b424510d..f10712073b 100644
--- a/libraries/mogo-map/proguard-rules.pro
+++ b/libraries/mogo-map/proguard-rules.pro
@@ -19,3 +19,8 @@
# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
+
+#-----MogoMap-----
+-keep class com.mogo.map.MogoNavi{
+ private ();
+}
diff --git a/modules/mogo-module-apps/build.gradle b/modules/mogo-module-apps/build.gradle
index ad68ce796a..fa04f473f9 100644
--- a/modules/mogo-module-apps/build.gradle
+++ b/modules/mogo-module-apps/build.gradle
@@ -24,9 +24,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/modules/mogo-module-apps/consumer-rules.pro b/modules/mogo-module-apps/consumer-rules.pro
index 12282873e2..aad1b810ba 100644
--- a/modules/mogo-module-apps/consumer-rules.pro
+++ b/modules/mogo-module-apps/consumer-rules.pro
@@ -1 +1,4 @@
#-----AppModule-----
+-keep class com.mogo.module.apps.model.AppEnum
+-keep class com.mogo.module.apps.view.**{*;}
+-keep class com.mogo.module.apps.AppFilter
\ No newline at end of file
diff --git a/modules/mogo-module-apps/proguard-rules.pro b/modules/mogo-module-apps/proguard-rules.pro
index 8100159367..66c1a6013a 100644
--- a/modules/mogo-module-apps/proguard-rules.pro
+++ b/modules/mogo-module-apps/proguard-rules.pro
@@ -19,3 +19,8 @@
# If you keep the line number information, uncomment this to
# hide the original source file mName.
#-renamesourcefileattribute SourceFile
+
+#-----AppModule-----
+-keep class com.mogo.module.apps.model.AppEnum
+-keep class com.mogo.module.apps.view.** {*;}
+-keep class com.mogo.module.apps.AppFilter
diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppsListActivity.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppsListActivity.java
index af515b21b9..fbaae3255b 100644
--- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppsListActivity.java
+++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppsListActivity.java
@@ -47,6 +47,24 @@ public class AppsListActivity extends MvpActivity< AppsListView, AppsListPresent
AppServiceHandler.getApis().getStatusManagerApi().setAppListUIShow( TAG, true );
}
+ @Override
+ protected void onStart() {
+ super.onStart();
+ try {
+ AppServiceHandler.getApis().getAdasControllerApi().closeADAS();
+ } catch ( Exception e ) {
+ }
+ }
+
+ @Override
+ protected void onRestart() {
+ super.onRestart();
+ try {
+ AppServiceHandler.getApis().getAdasControllerApi().closeADAS();
+ } catch ( Exception e ) {
+ }
+ }
+
@Override
protected int getLayoutId() {
return R.layout.module_apps_activity_list;
diff --git a/modules/mogo-module-authorize/build.gradle b/modules/mogo-module-authorize/build.gradle
index e386a95ef6..8f19f33858 100644
--- a/modules/mogo-module-authorize/build.gradle
+++ b/modules/mogo-module-authorize/build.gradle
@@ -28,9 +28,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/modules/mogo-module-authorize/consumer-rules.pro b/modules/mogo-module-authorize/consumer-rules.pro
index 551d2e9258..5668c1b3ca 100644
--- a/modules/mogo-module-authorize/consumer-rules.pro
+++ b/modules/mogo-module-authorize/consumer-rules.pro
@@ -1,2 +1,2 @@
#-----AuthorizeModule-----
--keep class com.mogo.module.authorize.module.bean.*{*;}
\ No newline at end of file
+-keep class com.mogo.module.authorize.module.bean.**{*;}
\ No newline at end of file
diff --git a/modules/mogo-module-authorize/proguard-rules.pro b/modules/mogo-module-authorize/proguard-rules.pro
index 4cb63f1b17..ff909a2e24 100644
--- a/modules/mogo-module-authorize/proguard-rules.pro
+++ b/modules/mogo-module-authorize/proguard-rules.pro
@@ -21,4 +21,4 @@
#-renamesourcefileattribute SourceFile
#-----AuthorizeModule-----
--keep class com.mogo.module.authorize.module.bean.*{*;}
\ No newline at end of file
+-keep class com.mogo.module.authorize.module.bean.**{*;}
\ No newline at end of file
diff --git a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeManagerImpl.kt b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeManagerImpl.kt
index a5e97c2cda..6c91ab12fc 100644
--- a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeManagerImpl.kt
+++ b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeManagerImpl.kt
@@ -6,8 +6,6 @@ import com.mogo.module.authorize.authprovider.module.IMogoAcquireAuthorizeListen
import com.mogo.module.authorize.model.proxy.AuthorizeProxy
import com.mogo.module.authorize.model.proxy.toAuthorizeType
import com.mogo.module.authorize.util.SharedPreferenceUtil.needAuthorization
-import com.mogo.module.authorize.util.SharedPreferenceUtil.setAuthorizeStatus
-import com.mogo.module.authorize.util.isDeviceOfD
import com.mogo.utils.logger.Logger
open abstract class MogoAuthorizeManagerImpl : IMogoAuthorizeInvoke {
@@ -19,13 +17,9 @@ open abstract class MogoAuthorizeManagerImpl : IMogoAuthorizeInvoke {
private val baseController: IMogoAuthorizeController by lazy { IMogoAuthorizeController() }
override fun needAuthorize(tag: String): Boolean {
- return if (isDeviceOfD()) {
- Logger.d(TAG, "===== needAuthorize update agreement in background")
- baseController.checkIfNeedAuthorize(tag.toAuthorizeType())
- needAuthorization(tag.toAuthorizeType())
- } else {
- false
- }
+ Logger.d(TAG, "===== needAuthorize update agreement in background")
+ baseController.checkIfNeedAuthorize(tag.toAuthorizeType())
+ return needAuthorization(tag.toAuthorizeType())
}
override fun updateAuthorizeStatus(tag: String) {
diff --git a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeProvider.kt b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeProvider.kt
index f234fad44f..1d28760113 100644
--- a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeProvider.kt
+++ b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/authprovider/biz/MogoAuthorizeProvider.kt
@@ -13,8 +13,6 @@ import com.mogo.module.authorize.authprovider.invoke.AuthorizeConstant.Companion
import com.mogo.module.authorize.authprovider.invoke.AuthorizeConstant.Companion.PATH_AGREEMENT_MODULE_NAME
import com.mogo.module.authorize.authprovider.invoke.AuthorizeInvokerConstant.Companion.AUTHORIZE_TYPE_LAUNCHER_MAIN
import com.mogo.module.authorize.authprovider.launcher.MogoMainAuthorize.Companion.mogoAuthShow
-import com.mogo.module.authorize.util.SharedPreferenceUtil.hasGuide
-import com.mogo.module.authorize.util.isDeviceOfD
import com.mogo.service.module.IMogoModuleLifecycle
import com.mogo.service.module.IMogoModuleProvider
import com.mogo.service.module.ModuleType
@@ -66,7 +64,8 @@ class MogoAuthorizeProvider : IMogoModuleProvider {
override fun init(context: Context) {
//todo 引导判断暂时去掉 后续引导流程更改完再放开
// todo if (isDeviceOfD() && hasGuide() && mogoAuthShow.needAuthorize(AUTHORIZE_TYPE_LAUNCHER_MAIN)) {
- if (isDeviceOfD() && mogoAuthShow.needAuthorize(AUTHORIZE_TYPE_LAUNCHER_MAIN)) {
+ // todo F系列暂时没有授权功能 1.1需求中添加 全量上
+ if (mogoAuthShow.needAuthorize(AUTHORIZE_TYPE_LAUNCHER_MAIN)) {
mogoAuthShow.invokeAuthorizeForShow(context)
} else {
//首次进入Launcher同步一下授权状态,防止由于用户清除数据造成首次加载还会出现授权状态不同步问题
diff --git a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/util/DeviceUtil.kt b/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/util/DeviceUtil.kt
deleted file mode 100644
index 8884512894..0000000000
--- a/modules/mogo-module-authorize/src/main/java/com/mogo/module/authorize/util/DeviceUtil.kt
+++ /dev/null
@@ -1,10 +0,0 @@
-package com.mogo.module.authorize.util
-
-import com.mogo.module.common.utils.CarSeries.*
-
-fun isDeviceOfD(): Boolean {
- return when (getSeries()) {
- CAR_SERIES_D80X, CAR_SERIES_D81X, CAR_SERIES_D82X, CAR_SERIES_D84X -> true
- else -> false
- }
-}
\ No newline at end of file
diff --git a/modules/mogo-module-back/consumer-rules.pro b/modules/mogo-module-back/consumer-rules.pro
index e69de29bb2..6c2f414424 100644
--- a/modules/mogo-module-back/consumer-rules.pro
+++ b/modules/mogo-module-back/consumer-rules.pro
@@ -0,0 +1,2 @@
+#-----ModuleBack-----
+-keep class com.mogo.module.back.BackToLauncherConst.*{*;}
\ No newline at end of file
diff --git a/modules/mogo-module-back/proguard-rules.pro b/modules/mogo-module-back/proguard-rules.pro
index f1b424510d..af838595ca 100644
--- a/modules/mogo-module-back/proguard-rules.pro
+++ b/modules/mogo-module-back/proguard-rules.pro
@@ -19,3 +19,6 @@
# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
+
+#-----ModuleBack-----
+-keep class com.mogo.module.back.BackToLauncherConst.*{*;}
\ No newline at end of file
diff --git a/modules/mogo-module-common/build.gradle b/modules/mogo-module-common/build.gradle
index f70ce5fcab..c3f39b9c50 100644
--- a/modules/mogo-module-common/build.gradle
+++ b/modules/mogo-module-common/build.gradle
@@ -15,9 +15,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/modules/mogo-module-common/consumer-rules.pro b/modules/mogo-module-common/consumer-rules.pro
index 22c03b07cd..9bcd20fb1c 100644
--- a/modules/mogo-module-common/consumer-rules.pro
+++ b/modules/mogo-module-common/consumer-rules.pro
@@ -1,4 +1,8 @@
#-----CommonModule-----
--keep class com.mogo.module.common.entity.*
--keep class com.mogo.module.common.entity.*{*;}
--keep class com.mogo.module.common.entity.MarkerResponse.*{*;}
+-keep class com.mogo.module.common.entity.** {*;}
+-keep class com.mogo.module.common.map.Interrupter
+-keep class com.mogo.module.common.map.Scene
+-keep class com.mogo.module.common.wm.** {*;}
+-keep class com.mogo.module.common.ModuleNames
+-keep class com.mogo.module.common.ModuleType
+-keep class com.mogo.module.common.MogoModulePaths
\ No newline at end of file
diff --git a/modules/mogo-module-common/proguard-rules.pro b/modules/mogo-module-common/proguard-rules.pro
index c8815c139a..cd20bd521c 100644
--- a/modules/mogo-module-common/proguard-rules.pro
+++ b/modules/mogo-module-common/proguard-rules.pro
@@ -21,6 +21,8 @@
#-renamesourcefileattribute SourceFile
#-----CommonModule-----
--keep class com.mogo.module.common.entity.*
--keep class com.mogo.module.common.entity.*{*;}
--keep class com.mogo.module.common.entity.MarkerResponse.*{*;}
+-keep class com.mogo.module.common.entity.** {*;}
+-keep class com.mogo.module.common.map.Interrupter
+-keep class com.mogo.module.common.map.Scene
+-keep class com.mogo.module.common.wm.** {*;}
+-keep class com.mogo.module.common.MogoModulePaths
diff --git a/modules/mogo-module-event-panel-noop/consumer-rules.pro b/modules/mogo-module-event-panel-noop/consumer-rules.pro
index e69de29bb2..da191c00b8 100644
--- a/modules/mogo-module-event-panel-noop/consumer-rules.pro
+++ b/modules/mogo-module-event-panel-noop/consumer-rules.pro
@@ -0,0 +1 @@
+-keep class com.zhidao.mogo.module.event.panel.EventPanelConstants
\ No newline at end of file
diff --git a/modules/mogo-module-event-panel-noop/proguard-rules.pro b/modules/mogo-module-event-panel-noop/proguard-rules.pro
index 481bb43481..58b6896c9d 100644
--- a/modules/mogo-module-event-panel-noop/proguard-rules.pro
+++ b/modules/mogo-module-event-panel-noop/proguard-rules.pro
@@ -18,4 +18,6 @@
# If you keep the line number information, uncomment this to
# hide the original source file name.
-#-renamesourcefileattribute SourceFile
\ No newline at end of file
+#-renamesourcefileattribute SourceFile
+
+-keep class com.zhidao.mogo.module.event.panel.EventPanelConstants
\ No newline at end of file
diff --git a/modules/mogo-module-event-panel/build.gradle b/modules/mogo-module-event-panel/build.gradle
index 5cc5e8326b..4fdf60062d 100644
--- a/modules/mogo-module-event-panel/build.gradle
+++ b/modules/mogo-module-event-panel/build.gradle
@@ -25,9 +25,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/modules/mogo-module-event-panel/consumer-rules.pro b/modules/mogo-module-event-panel/consumer-rules.pro
index a04fddd20a..6cd2a10967 100644
--- a/modules/mogo-module-event-panel/consumer-rules.pro
+++ b/modules/mogo-module-event-panel/consumer-rules.pro
@@ -1,3 +1,5 @@
#-----EventPanel------
--keep class com.zhidao.mogo.module.event.panel.bean.*{*;}
--keep class com.zhidao.mogo.module.event.panel.dao.*{*;}
\ No newline at end of file
+-keep class com.zhidao.mogo.module.event.panel.bean.** {*;}
+-keep class com.zhidao.mogo.module.event.panel.dao.** {*;}
+-keep class com.zhidao.mogo.module.event.panel.listener.** {*;}
+-keep class com.zhidao.mogo.module.event.panel.EventPanelConstants
\ No newline at end of file
diff --git a/modules/mogo-module-event-panel/proguard-rules.pro b/modules/mogo-module-event-panel/proguard-rules.pro
index 0916f583a9..e778de0a5a 100644
--- a/modules/mogo-module-event-panel/proguard-rules.pro
+++ b/modules/mogo-module-event-panel/proguard-rules.pro
@@ -21,5 +21,7 @@
#-renamesourcefileattribute SourceFile
#-----EventPanel------
--keep class com.zhidao.mogo.module.event.panel.bean.*{*;}
--keep class com.zhidao.mogo.module.event.panel.dao.*{*;}
\ No newline at end of file
+-keep class com.zhidao.mogo.module.event.panel.bean.** {*;}
+-keep class com.zhidao.mogo.module.event.panel.dao.** {*;}
+-keep class com.zhidao.mogo.module.event.panel.listener.** {*;}
+-keep class com.zhidao.mogo.module.event.panel.EventPanelConstants
\ No newline at end of file
diff --git a/modules/mogo-module-extensions/build.gradle b/modules/mogo-module-extensions/build.gradle
index bbf30570dd..56876478a7 100644
--- a/modules/mogo-module-extensions/build.gradle
+++ b/modules/mogo-module-extensions/build.gradle
@@ -22,9 +22,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/modules/mogo-module-extensions/consumer-rules.pro b/modules/mogo-module-extensions/consumer-rules.pro
index b743349fdc..1c0a524d78 100644
--- a/modules/mogo-module-extensions/consumer-rules.pro
+++ b/modules/mogo-module-extensions/consumer-rules.pro
@@ -1,2 +1,8 @@
#-----ExtensionModule-----
--keep class com.mogo.module.extensions.userinfo.UserInfoResponse.*{*;}
\ No newline at end of file
+-keep class com.mogo.module.extensions.userinfo.**{*;}
+-keep class com.mogo.module.extensions.weather.Phenomena
+-keep class com.mogo.module.extensions.weather.WeatherCallback
+-keep interface com.mogo.module.extensions.net.UserInfoNetApiServices
+-keep class com.mogo.module.extensions.utils.TopViewAnimHelper
+-keep class com.mogo.module.extensions.ExtensionsView
+-keep class com.mogo.module.extensions.ExtensionsModuleConst
\ No newline at end of file
diff --git a/modules/mogo-module-extensions/proguard-rules.pro b/modules/mogo-module-extensions/proguard-rules.pro
index ca80442aa4..83112829d5 100644
--- a/modules/mogo-module-extensions/proguard-rules.pro
+++ b/modules/mogo-module-extensions/proguard-rules.pro
@@ -21,4 +21,10 @@
#-renamesourcefileattribute SourceFile
#-----ExtensionModule-----
--keep class com.mogo.module.extensions.userinfo.UserInfoResponse.*{*;}
\ No newline at end of file
+-keep class com.mogo.module.extensions.userinfo.**{*;}
+-keep class com.mogo.module.extensions.weather.Phenomena
+-keep class com.mogo.module.extensions.weather.WeatherCallback
+-keep interface com.mogo.module.extensions.net.UserInfoNetApiServices
+-keep class com.mogo.module.extensions.utils.TopViewAnimHelper
+-keep class com.mogo.module.extensions.ExtensionsView
+-keep class com.mogo.module.extensions.ExtensionsModuleConst
\ No newline at end of file
diff --git a/modules/mogo-module-extensions/src/main/res/drawable/module_ext_dw_common_corner_bkg.xml b/modules/mogo-module-extensions/src/main/res/drawable/module_ext_dw_common_corner_bkg.xml
index 9c3715fa3a..a5e236e189 100644
--- a/modules/mogo-module-extensions/src/main/res/drawable/module_ext_dw_common_corner_bkg.xml
+++ b/modules/mogo-module-extensions/src/main/res/drawable/module_ext_dw_common_corner_bkg.xml
@@ -1,9 +1,15 @@
+ -
+
+
+
+
+
-
-
+
\ No newline at end of file
diff --git a/modules/mogo-module-extensions/src/main/res/drawable/module_ext_dw_upload_road_condition_bkg.xml b/modules/mogo-module-extensions/src/main/res/drawable/module_ext_dw_upload_road_condition_bkg.xml
index 16e096724d..5fe60723c9 100644
--- a/modules/mogo-module-extensions/src/main/res/drawable/module_ext_dw_upload_road_condition_bkg.xml
+++ b/modules/mogo-module-extensions/src/main/res/drawable/module_ext_dw_upload_road_condition_bkg.xml
@@ -1,5 +1,11 @@
+ -
+
+
+
+
+
-
diff --git a/modules/mogo-module-gps-simulator-debug/build.gradle b/modules/mogo-module-gps-simulator-debug/build.gradle
index e9fdf98d81..12fbf4774d 100644
--- a/modules/mogo-module-gps-simulator-debug/build.gradle
+++ b/modules/mogo-module-gps-simulator-debug/build.gradle
@@ -21,9 +21,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/modules/mogo-module-gps-simulator/consumer-rules.pro b/modules/mogo-module-gps-simulator/consumer-rules.pro
index e69de29bb2..fd85bbf010 100644
--- a/modules/mogo-module-gps-simulator/consumer-rules.pro
+++ b/modules/mogo-module-gps-simulator/consumer-rules.pro
@@ -0,0 +1,2 @@
+#-----MogoGSPSimulator-----
+-keep class com.mogo.module.gps.simulator.GpsSimulatorConstants
\ No newline at end of file
diff --git a/modules/mogo-module-gps-simulator/proguard-rules.pro b/modules/mogo-module-gps-simulator/proguard-rules.pro
index f1b424510d..5ee323b27c 100644
--- a/modules/mogo-module-gps-simulator/proguard-rules.pro
+++ b/modules/mogo-module-gps-simulator/proguard-rules.pro
@@ -19,3 +19,6 @@
# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
+
+#-----MogoGSPSimulator-----
+-keep class com.mogo.module.gps.simulator.GpsSimulatorConstants
diff --git a/modules/mogo-module-guide/build.gradle b/modules/mogo-module-guide/build.gradle
index ec45c26aaa..bc18471261 100644
--- a/modules/mogo-module-guide/build.gradle
+++ b/modules/mogo-module-guide/build.gradle
@@ -28,9 +28,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/modules/mogo-module-left-panel-noop/consumer-rules.pro b/modules/mogo-module-left-panel-noop/consumer-rules.pro
index e69de29bb2..f18321e8e7 100644
--- a/modules/mogo-module-left-panel-noop/consumer-rules.pro
+++ b/modules/mogo-module-left-panel-noop/consumer-rules.pro
@@ -0,0 +1,2 @@
+#-----ModuleLeftPanel-----
+-keep class com.zhidao.mogo.module.left.panel.LeftPanelConst
\ No newline at end of file
diff --git a/modules/mogo-module-left-panel-noop/proguard-rules.pro b/modules/mogo-module-left-panel-noop/proguard-rules.pro
index 481bb43481..9e43f5c7e6 100644
--- a/modules/mogo-module-left-panel-noop/proguard-rules.pro
+++ b/modules/mogo-module-left-panel-noop/proguard-rules.pro
@@ -18,4 +18,7 @@
# If you keep the line number information, uncomment this to
# hide the original source file name.
-#-renamesourcefileattribute SourceFile
\ No newline at end of file
+#-renamesourcefileattribute SourceFile
+
+#-----ModuleLeftPanel-----
+-keep class com.zhidao.mogo.module.left.panel.LeftPanelConst
\ No newline at end of file
diff --git a/modules/mogo-module-left-panel/consumer-rules.pro b/modules/mogo-module-left-panel/consumer-rules.pro
index e69de29bb2..f18321e8e7 100644
--- a/modules/mogo-module-left-panel/consumer-rules.pro
+++ b/modules/mogo-module-left-panel/consumer-rules.pro
@@ -0,0 +1,2 @@
+#-----ModuleLeftPanel-----
+-keep class com.zhidao.mogo.module.left.panel.LeftPanelConst
\ No newline at end of file
diff --git a/modules/mogo-module-left-panel/proguard-rules.pro b/modules/mogo-module-left-panel/proguard-rules.pro
index 481bb43481..9e43f5c7e6 100644
--- a/modules/mogo-module-left-panel/proguard-rules.pro
+++ b/modules/mogo-module-left-panel/proguard-rules.pro
@@ -18,4 +18,7 @@
# If you keep the line number information, uncomment this to
# hide the original source file name.
-#-renamesourcefileattribute SourceFile
\ No newline at end of file
+#-renamesourcefileattribute SourceFile
+
+#-----ModuleLeftPanel-----
+-keep class com.zhidao.mogo.module.left.panel.LeftPanelConst
\ No newline at end of file
diff --git a/modules/mogo-module-main/build.gradle b/modules/mogo-module-main/build.gradle
index 01d390ad2f..2f686a9f62 100644
--- a/modules/mogo-module-main/build.gradle
+++ b/modules/mogo-module-main/build.gradle
@@ -21,9 +21,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/modules/mogo-module-main/consumer-rules.pro b/modules/mogo-module-main/consumer-rules.pro
index bf396b0707..e5fa092e14 100644
--- a/modules/mogo-module-main/consumer-rules.pro
+++ b/modules/mogo-module-main/consumer-rules.pro
@@ -1,2 +1,9 @@
#-----MainModule-----
--keep class com.mogo.module.main.cards.CardIntroduceConfig.*{*;}
\ No newline at end of file
+-keep class com.mogo.module.main.cards.CardIntroduceConfig.*{*;}
+-keep class com.mogo.module.main.cards.MogoModulesHandler
+-keep class com.mogo.module.main.cards.HorizentalBaseTransformer
+-keep class com.mogo.module.main.cards.VerticalBaseTransformer
+-keep class com.mogo.module.main.constants.**{*;}
+-keep class com.mogo.module.main.livedata.**{*;}
+-keep class com.mogo.module.main.service.MogoMainService
+-keep class com.mogo.module.main.windowview.IWindowViewHandler
\ No newline at end of file
diff --git a/modules/mogo-module-main/proguard-rules.pro b/modules/mogo-module-main/proguard-rules.pro
index 41fecb124b..8cb438dc4b 100644
--- a/modules/mogo-module-main/proguard-rules.pro
+++ b/modules/mogo-module-main/proguard-rules.pro
@@ -21,4 +21,11 @@
#-renamesourcefileattribute SourceFile
#-----MainModule-----
--keep class com.mogo.module.main.cards.CardIntroduceConfig.*{*;}
\ No newline at end of file
+-keep class com.mogo.module.main.cards.CardIntroduceConfig.*{*;}
+-keep class com.mogo.module.main.cards.MogoModulesHandler
+-keep class com.mogo.module.main.cards.HorizentalBaseTransformer
+-keep class com.mogo.module.main.cards.VerticalBaseTransformer
+-keep class com.mogo.module.main.constants.**{*;}
+-keep class com.mogo.module.main.livedata.**{*;}
+-keep class com.mogo.module.main.service.MogoMainService
+-keep class com.mogo.module.main.windowview.IWindowViewHandler
\ No newline at end of file
diff --git a/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java b/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java
index 7df43712f8..854a27ff58 100644
--- a/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java
+++ b/modules/mogo-module-main/src/main/java/com/mogo/module/main/MainActivity.java
@@ -21,6 +21,7 @@ import com.mogo.map.marker.IMogoMarkerClickListener;
import com.mogo.map.uicontroller.IMogoMapUIController;
import com.mogo.module.common.map.MapCenterPointStrategy;
import com.mogo.module.common.map.Scene;
+import com.mogo.module.common.utils.CarSeries;
import com.mogo.module.main.cards.MogoModulesManager;
import com.mogo.module.main.service.MogoMainService;
import com.mogo.module.main.windowview.FloatingViewHandler;
@@ -30,7 +31,6 @@ import com.mogo.service.fragmentmanager.IMogoFragmentManager;
import com.mogo.service.intent.IMogoIntentListener;
import com.mogo.service.map.IMogoMapService;
import com.mogo.service.module.IMogoModuleProvider;
-import com.mogo.service.obu.IMogoObuManager;
import com.mogo.service.statusmanager.IMogoStatusManager;
import com.mogo.utils.logger.Logger;
import com.zhidao.autopilot.support.api.AutopilotServiceManage;
@@ -244,12 +244,21 @@ public class MainActivity extends MvpActivity< MainView, MainPresenter > impleme
super.onPause();
mMogoStatusManager.setMainPageResumeStatus( TAG, false );
mMogoStatusManager.setMainPageLaunchedStatus( TAG, false );
- if ( !mIsHomeKeyDown || !DebugConfig.isLauncher() ) {
+ if ( shouldCloseADASPanel() ) {
mServiceApis.getAdasControllerApi().closeADAS();
}
mIsHomeKeyDown = false;
}
+ private boolean shouldCloseADASPanel(){
+ // m4 系列因为按home键会造成页面pause后resume,造成adas panel 闪烁
+ // f 系列加上上滑返回桌面后会走 mIsHomeKeyDown = true,但是不会造成页面pause
+ // 独立 app 任何情况下都需要隐藏 adas
+ return !mIsHomeKeyDown
+ || CarSeries.getSeries() == CarSeries.CAR_SERIES_F80X
+ || !DebugConfig.isLauncher();
+ }
+
@Override
protected void onStop() {
super.onStop();
diff --git a/modules/mogo-module-map/consumer-rules.pro b/modules/mogo-module-map/consumer-rules.pro
index e69de29bb2..016baa21f6 100644
--- a/modules/mogo-module-map/consumer-rules.pro
+++ b/modules/mogo-module-map/consumer-rules.pro
@@ -0,0 +1,2 @@
+#-----ModuleMap-----
+-keep class com.mogo.module.map.NavConstants
\ No newline at end of file
diff --git a/modules/mogo-module-map/proguard-rules.pro b/modules/mogo-module-map/proguard-rules.pro
index f1b424510d..707fa663b8 100644
--- a/modules/mogo-module-map/proguard-rules.pro
+++ b/modules/mogo-module-map/proguard-rules.pro
@@ -19,3 +19,6 @@
# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
+
+#-----ModuleMap-----
+-keep class com.mogo.module.map.NavConstants
diff --git a/modules/mogo-module-media/build.gradle b/modules/mogo-module-media/build.gradle
index b646098a91..0ddfae0634 100644
--- a/modules/mogo-module-media/build.gradle
+++ b/modules/mogo-module-media/build.gradle
@@ -22,9 +22,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/modules/mogo-module-media/consumer-rules.pro b/modules/mogo-module-media/consumer-rules.pro
index 8504431d1b..4e16a57537 100644
--- a/modules/mogo-module-media/consumer-rules.pro
+++ b/modules/mogo-module-media/consumer-rules.pro
@@ -1,10 +1,13 @@
#-----MediaModule-----
-dontwarn com.mogo.module.media.**
--keep class com.mogo.module.media.listener.* { *; }
--keep class com.mogo.module.media.model.* { *; }
--keep class com.mogo.module.media.view.* { *; }
--keep class com.mogo.module.media.widget.* { *; }
--keep class com.mogo.module.media.api.* { *; }
--keep class com.mogo.module.media.constants.* { *; }
--keep class com.mogo.module.media.presenter.* { *; }
--keep class com.mogo.module.media.receiver.* { *; }
\ No newline at end of file
+-keep class com.mogo.module.media.listener.** { *; }
+-keep class com.mogo.module.media.model.** { *; }
+-keep class com.mogo.module.media.view.** { *; }
+-keep class com.mogo.module.media.widget.** { *; }
+-keep class com.mogo.module.media.api.** { *; }
+-keep class com.mogo.module.media.constants.** { *; }
+-keep class com.mogo.module.media.presenter.** { *; }
+-keep class com.mogo.module.media.receiver.** { *; }
+-keep class com.mogo.module.media.utils.OnBitmapToLocalListener
+-keep class com.mogo.module.media.utils.OnCompressListener
+-keep class com.mogo.module.media.MediaConstants
\ No newline at end of file
diff --git a/modules/mogo-module-media/proguard-rules.pro b/modules/mogo-module-media/proguard-rules.pro
index b3de1dc352..0d676ccbbf 100644
--- a/modules/mogo-module-media/proguard-rules.pro
+++ b/modules/mogo-module-media/proguard-rules.pro
@@ -22,11 +22,14 @@
#-----MediaModule-----
-dontwarn com.mogo.module.media.**
--keep class com.mogo.module.media.listener.* { *; }
--keep class com.mogo.module.media.model.* { *; }
--keep class com.mogo.module.media.view.* { *; }
--keep class com.mogo.module.media.widget.* { *; }
--keep class com.mogo.module.media.api.* { *; }
--keep class com.mogo.module.media.constants.* { *; }
--keep class com.mogo.module.media.presenter.* { *; }
--keep class com.mogo.module.media.receiver.* { *; }
\ No newline at end of file
+-keep class com.mogo.module.media.listener.** { *; }
+-keep class com.mogo.module.media.model.** { *; }
+-keep class com.mogo.module.media.view.** { *; }
+-keep class com.mogo.module.media.widget.** { *; }
+-keep class com.mogo.module.media.api.** { *; }
+-keep class com.mogo.module.media.constants.** { *; }
+-keep class com.mogo.module.media.presenter.** { *; }
+-keep class com.mogo.module.media.receiver.** { *; }
+-keep class com.mogo.module.media.utils.OnBitmapToLocalListener
+-keep class com.mogo.module.media.utils.OnCompressListener
+-keep class com.mogo.module.media.MediaConstants
\ No newline at end of file
diff --git a/modules/mogo-module-media/src/main/java/com/mogo/module/media/presenter/KwPresenter.java b/modules/mogo-module-media/src/main/java/com/mogo/module/media/presenter/KwPresenter.java
index a45a42bb6d..f783c4d80c 100644
--- a/modules/mogo-module-media/src/main/java/com/mogo/module/media/presenter/KwPresenter.java
+++ b/modules/mogo-module-media/src/main/java/com/mogo/module/media/presenter/KwPresenter.java
@@ -14,7 +14,6 @@ import com.mogo.service.IMogoServiceApis;
import com.mogo.service.MogoServicePaths;
import com.mogo.service.statusmanager.IMogoStatusChangedListener;
import com.mogo.service.statusmanager.StatusDescriptor;
-import com.mogo.utils.logger.Logger;
import cn.kuwo.autosdk.api.KWAPI;
import cn.kuwo.autosdk.api.OnGetSongImgUrlListener;
@@ -43,14 +42,14 @@ public class KwPresenter extends BaseMediaPresenter {
kwapi = KWAPI.createKWAPI(context, "auto");
kwapi.registerConnectedListener(b -> {
- Logger.d(TAG, "onConnected: " + b);
+ Log.d(TAG, "onConnected: " + b);
Log.d(TAG, "onConnected: " + b);
isBind = b;
if (!isBind) {
mView.onMusicStopped();
}else{
PlayerStatus currentState = kwapi.getPlayerStatus();
- Logger.d(TAG, "check current status: " + currentState);
+ Log.d(TAG, "check current status: " + currentState);
Log.d(TAG, "check current status: " + currentState);
if(currentState == PlayerStatus.BUFFERING||currentState == PlayerStatus.PLAYING){
currentMedia.setPlayState(MusicConstant.PLAY_STATE_PLAYING);
@@ -62,13 +61,13 @@ public class KwPresenter extends BaseMediaPresenter {
});
kwapi.registerExitListener(() -> {
- Logger.d(TAG, "onExit===");
+ Log.d(TAG, "onExit===");
Log.d(TAG, "onExit===");
mView.onAppExit();
});
kwapi.registerPlayerStatusListener((playerStatus, music) -> {
- Logger.d(TAG, "onPlayerStatusListener: " + playerStatus + " music: " + music.name);
+ Log.d(TAG, "onPlayerStatusListener: " + playerStatus + " music: " + music.name);
switch (playerStatus) {
case BUFFERING:
if (currentMedia.getMediaName() == null || !currentMedia.getMediaName().equals(music.name)) {
@@ -113,7 +112,7 @@ public class KwPresenter extends BaseMediaPresenter {
@Override
public void onStatusChanged(StatusDescriptor descriptor, boolean isTrue) {
if (isTrue) {
- Logger.d(TAG, "onResume, isBind: " + isBind);
+ Log.d(TAG, "onResume, isBind: " + isBind);
Log.d(TAG, "onResume, isBind: " + isBind);
// 需要在resume时候判断绑定关系是否正常
if (!isBind) {
@@ -125,14 +124,14 @@ public class KwPresenter extends BaseMediaPresenter {
// 当前处于绑定状态,且有音乐信息,需判断是否正在播放,进行界面刷新
Log.d(TAG, "step1==" + currentMusic.name);
if (kwapi.getPlayerStatus() == PlayerStatus.BUFFERING || kwapi.getPlayerStatus() == PlayerStatus.PLAYING) {
- Logger.d(TAG, "当前可能正在播放音乐,需要更新=1=" + currentMusic.name);
+ Log.d(TAG, "当前可能正在播放音乐,需要更新=1=" + currentMusic.name);
currentMedia.setMediaName(currentMusic.name);
currentMedia.setPlayState(MusicConstant.PLAY_STATE_PLAYING);
mView.onMediaInfoChanged(currentMedia);
mView.onMusicPlaying();
kwapi.getSongPicUrl(currentMusic, onGetSongImgUrlListener);
} else if (kwapi.getPlayerStatus() == PlayerStatus.INIT) {
- Logger.d(TAG, "当前可能正在播放音乐,需要更新=3=" + currentMusic.name);
+ Log.d(TAG, "当前可能正在播放音乐,需要更新=3=" + currentMusic.name);
currentMedia.setMediaName(currentMusic.name);
currentMedia.setPlayState(MusicConstant.PLAY_STATE_PAUSE_OR_STOP);
mView.onMediaInfoChanged(currentMedia);
@@ -142,14 +141,14 @@ public class KwPresenter extends BaseMediaPresenter {
Log.d(TAG, "step2==media: " + currentMedia.getMediaName() + " " +
"musicName: " + currentMusic.name + " status: " + kwapi.getPlayerStatus());
if (kwapi.getPlayerStatus() == PlayerStatus.BUFFERING || kwapi.getPlayerStatus() == PlayerStatus.PLAYING) {
- Logger.d(TAG, "当前可能正在播放音乐,需要更新=2=" + currentMusic.name);
+ Log.d(TAG, "当前可能正在播放音乐,需要更新=2=" + currentMusic.name);
currentMedia.setMediaName(currentMusic.name);
currentMedia.setPlayState(MusicConstant.PLAY_STATE_PLAYING);
mView.onMediaInfoChanged(currentMedia);
mView.onMusicPlaying();
kwapi.getSongPicUrl(currentMusic, onGetSongImgUrlListener);
}else if (kwapi.getPlayerStatus() == PlayerStatus.INIT) {
- Logger.d(TAG, "当前可能正在播放音乐,需要更新=4=" + currentMusic.name);
+ Log.d(TAG, "当前可能正在播放音乐,需要更新=4=" + currentMusic.name);
currentMedia.setMediaName(currentMusic.name);
currentMedia.setPlayState(MusicConstant.PLAY_STATE_PAUSE_OR_STOP);
mView.onMediaInfoChanged(currentMedia);
@@ -237,16 +236,18 @@ public class KwPresenter extends BaseMediaPresenter {
private OnGetSongImgUrlListener onGetSongImgUrlListener = new OnGetSongImgUrlListener() {
@Override
public void onGetSongImgUrlSucessed(Music music, String s) {
- currentMedia.setMediaName(music.name);
- currentMedia.setMediaImg(s);
- Logger.d(TAG,
- "onGetSongImgUrlSucessed: " + currentMedia);
- handler.post(() -> mView.onMediaInfoChanged(currentMedia));
+ if(currentMedia.getPlayState() == MusicConstant.PLAY_STATE_PLAYING) {
+ currentMedia.setMediaName(music.name);
+ currentMedia.setMediaImg(s);
+ Log.d(TAG,
+ "onGetSongImgUrlSucessed: " + currentMedia);
+ handler.post(() -> mView.onMediaInfoChanged(currentMedia));
+ }
}
@Override
public void onGetSongImgUrlFailed(Music music, int i) {
- Logger.e(TAG, "onGetSongImgUrlFailed: " + i);
+ Log.e(TAG, "onGetSongImgUrlFailed: " + i);
}
};
diff --git a/modules/mogo-module-media/src/main/java/com/mogo/module/media/window/MediaWindow2.java b/modules/mogo-module-media/src/main/java/com/mogo/module/media/window/MediaWindow2.java
index 8be84e1222..1b8ab10d33 100644
--- a/modules/mogo-module-media/src/main/java/com/mogo/module/media/window/MediaWindow2.java
+++ b/modules/mogo-module-media/src/main/java/com/mogo/module/media/window/MediaWindow2.java
@@ -1,6 +1,7 @@
package com.mogo.module.media.window;
import android.content.Context;
+import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.FrameLayout;
@@ -101,6 +102,7 @@ public class MediaWindow2 implements IMusicView {
int statusBarHeight = WindowUtils.getStatusBarHeight(mContext);
Logger.d(TAG,
"yPos: " + yPos + " xPos: " + xPos + " statusBarHeight: " + statusBarHeight);
+ Log.d(TAG, "addMediaWindoView");
FrameLayout.LayoutParams params =
new FrameLayout.LayoutParams((int) mContext.getResources().getDimension(R.dimen.module_media_pop_window_width), (int) mContext.getResources().getDimension(R.dimen.module_media_pop_window_height));
params.leftMargin = xPos;
@@ -204,6 +206,7 @@ public class MediaWindow2 implements IMusicView {
@Override
public void onMusicPlaying() {
Logger.d(TAG, "onMusicPlaying===" + mMediaInfoData);
+ Log.d(TAG, "onMusicPlaying===" + mMediaInfoData);
isFirstPlay = false;
updateWindowUI(false);
if (mWindowPlayPause != null) {
@@ -218,6 +221,7 @@ public class MediaWindow2 implements IMusicView {
@Override
public void onMusicPause() {
Logger.d(TAG, "onMusicPause: ===" + mMediaInfoData);
+ Log.d(TAG, "onMusicPause: ===" + mMediaInfoData);
if (mWindowPlayPause != null) {
mWindowPlayPause.setImageResource(R.drawable.module_media_window_pop_pause);
}
@@ -230,6 +234,7 @@ public class MediaWindow2 implements IMusicView {
@Override
public void onMusicStopped() {
Logger.d(TAG, "onMusicStopped===" + mMediaInfoData);
+ Log.d(TAG, "onMusicStopped===" + mMediaInfoData);
if (mWindowPlayPause != null) {
mWindowPlayPause.setImageResource(R.drawable.module_media_window_pop_pause);
}
@@ -244,6 +249,7 @@ public class MediaWindow2 implements IMusicView {
@Override
public void onMediaInfoChanged(MediaInfoData mediaInfoData) {
Logger.d(TAG, "onMediaInfoChanged: " + mediaInfoData);
+ Log.d(TAG, "onMediaInfoChanged:" + mediaInfoData);
mMediaInfoData = mediaInfoData;
addWindowView();
updateWindowUI();
@@ -273,6 +279,8 @@ public class MediaWindow2 implements IMusicView {
@Override
public void onAppExit() {
- mWindowView.setVisibility(View.GONE);
+ if ( mWindowView != null ) {
+ mWindowView.setVisibility(View.GONE);
+ }
}
}
diff --git a/modules/mogo-module-search/build.gradle b/modules/mogo-module-search/build.gradle
index fb5375842c..53027f6e57 100644
--- a/modules/mogo-module-search/build.gradle
+++ b/modules/mogo-module-search/build.gradle
@@ -29,9 +29,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/modules/mogo-module-search/consumer-rules.pro b/modules/mogo-module-search/consumer-rules.pro
index 448a36ef40..830135631c 100644
--- a/modules/mogo-module-search/consumer-rules.pro
+++ b/modules/mogo-module-search/consumer-rules.pro
@@ -1,4 +1,8 @@
#-----SearchModule-----
--keep class com.mogo.module.navi.bean.*{*;}
--keep class com.mogo.module.navi.dao.*{*;}
--keep class com.mogo.module.navi.database.*{*;}
\ No newline at end of file
+-keep class com.mogo.module.navi.bean.**{*;}
+-keep class com.mogo.module.navi.constants.**{*;}
+-keep class com.mogo.module.navi.dao.**{*;}
+-keep class com.mogo.module.navi.database.**{*;}
+-keep class * extends com.mogo.module.navi.cp.PersonalInfoManager{
+ public static final ;
+}
diff --git a/modules/mogo-module-search/proguard-rules.pro b/modules/mogo-module-search/proguard-rules.pro
index 80452f518d..7b0b77e021 100644
--- a/modules/mogo-module-search/proguard-rules.pro
+++ b/modules/mogo-module-search/proguard-rules.pro
@@ -21,6 +21,10 @@
#-renamesourcefileattribute SourceFile
#-----SearchModule-----
--keep class com.mogo.module.navi.bean.*{*;}
--keep class com.mogo.module.navi.dao.*{*;}
--keep class com.mogo.module.navi.database.*{*;}
+-keep class com.mogo.module.navi.bean.**{*;}
+-keep class com.mogo.module.navi.constants.**{*;}
+-keep class com.mogo.module.navi.dao.**{*;}
+-keep class com.mogo.module.navi.database.**{*;}
+-keep class * extends com.mogo.module.navi.cp.PersonalInfoManager{
+ public static final ;
+}
\ No newline at end of file
diff --git a/modules/mogo-module-service/build.gradle b/modules/mogo-module-service/build.gradle
index df5f5652fb..01bf8f3eaa 100644
--- a/modules/mogo-module-service/build.gradle
+++ b/modules/mogo-module-service/build.gradle
@@ -25,9 +25,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/modules/mogo-module-service/consumer-rules.pro b/modules/mogo-module-service/consumer-rules.pro
index 18d8776434..06d4b04e1d 100644
--- a/modules/mogo-module-service/consumer-rules.pro
+++ b/modules/mogo-module-service/consumer-rules.pro
@@ -1,4 +1,13 @@
#-----ServiceModule-----
-keep class com.mogo.module.service.carinfo.CarStateInfo.*{*;}
-keep class com.mogo.module.service.network.RefreshBody.*{*;}
--keep class com.mogo.module.service.network.bean.DemoUserInfoEntity.*{*;}
\ No newline at end of file
+-keep class com.mogo.module.service.network.bean.DemoUserInfoEntity.*{*;}
+-keep interface com.mogo.module.service.intent.IntentHandler
+-keep interface com.mogo.module.service.marker.IMarkerView
+-keep interface com.mogo.module.service.network.RefreshApiService
+-keep interface com.mogo.module.service.network.RefreshCallback
+-keep interface com.mogo.module.service.network.bean.DemoUserInfoEntity
+-keep class com.mogo.module.service.strategy.CarIconDisplayStrategy{
+ public static final ;
+ }
+ -keep class com.mogo.module.service.ServiceConst
\ No newline at end of file
diff --git a/modules/mogo-module-service/proguard-rules.pro b/modules/mogo-module-service/proguard-rules.pro
index d09743b263..02a339ca47 100644
--- a/modules/mogo-module-service/proguard-rules.pro
+++ b/modules/mogo-module-service/proguard-rules.pro
@@ -23,4 +23,13 @@
#-----ServiceModule-----
-keep class com.mogo.module.service.carinfo.CarStateInfo.*{*;}
-keep class com.mogo.module.service.network.RefreshBody.*{*;}
--keep class com.mogo.module.service.network.bean.DemoUserInfoEntity.*{*;}
\ No newline at end of file
+-keep class com.mogo.module.service.network.bean.DemoUserInfoEntity.*{*;}
+-keep interface com.mogo.module.service.intent.IntentHandler
+-keep interface com.mogo.module.service.marker.IMarkerView
+-keep interface com.mogo.module.service.network.RefreshApiService
+-keep interface com.mogo.module.service.network.RefreshCallback
+-keep interface com.mogo.module.service.network.bean.DemoUserInfoEntity
+-keep class com.mogo.module.service.strategy.CarIconDisplayStrategy{
+ public static final ;
+}
+-keep class com.mogo.module.service.ServiceConst
\ No newline at end of file
diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServices.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServices.java
index e606546990..2e3a280d45 100644
--- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServices.java
+++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServices.java
@@ -715,6 +715,7 @@ public class MogoServices implements IMogoMapListener,
break;
case ACC_STATUS:
if ( isTrue ) {
+ initLocationServiceProcess( mContext );
mADASController.showADAS();
refreshStrategy();
MarkerServiceHandler.getApis().getMapServiceApi().getSingletonLocationClient( mContext ).stop();
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 43613ad77f..f641febd03 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
@@ -3,6 +3,8 @@ package com.mogo.module.service.marker;
import android.content.Context;
import android.graphics.Rect;
import android.text.TextUtils;
+import android.view.animation.AccelerateInterpolator;
+import android.view.animation.LinearInterpolator;
import com.mogo.commons.AbsMogoApplication;
import com.mogo.commons.debug.DebugConfig;
@@ -11,6 +13,7 @@ import com.mogo.map.marker.IMogoMarker;
import com.mogo.map.marker.IMogoMarkerClickListener;
import com.mogo.map.marker.IMogoMarkerManager;
import com.mogo.map.marker.MogoMarkerOptions;
+import com.mogo.map.marker.anim.OnMarkerAnimationListener;
import com.mogo.module.common.ModuleNames;
import com.mogo.module.common.entity.MarkerCarPois;
import com.mogo.module.common.entity.MarkerCardResult;
@@ -34,6 +37,7 @@ import com.mogo.service.module.IMogoBizActionDoneListener;
import com.mogo.utils.ResourcesHelper;
import com.mogo.utils.ThreadPoolService;
import com.mogo.utils.UiThreadHandler;
+import com.mogo.utils.WorkThreadHandler;
import com.mogo.utils.logger.Logger;
import org.json.JSONArray;
@@ -368,15 +372,42 @@ public class MapMarkerManager implements IMogoMarkerClickListener,
IMogoMarker mogoMarker = existCarMap.get( sn );
if ( mogoMarker == null || mogoMarker.isDestroyed() ) {
Logger.d( TAG, "draw road condition, sn = %s", sn );
- mogoMarker = drawMapMarker( markerShowEntity, ServiceConst.MARKER_Z_INDEX_HIGH );
- }
- if ( mogoMarker != null ) {
- mogoMarker.setVisible( true );
+ try {
+ post2AddAndStartAnimation( markerShowEntity, i * 100L );
+ } catch ( Exception e ) {
+ e.printStackTrace();
+ }
}
}
}
}
+ private void post2AddAndStartAnimation( MarkerShowEntity entity, long delay ) {
+ if ( entity == null ) {
+ return;
+ }
+ WorkThreadHandler.getInstance().postDelayed( () -> {
+ if ( entity == null ) {
+ return;
+ }
+ IMogoMarker marker = drawMapMarker( entity, ServiceConst.MARKER_Z_INDEX_HIGH );
+ marker.startScaleAnimationWithAlpha( 0, 1.2f, 0, 1.2f, 0f, 1f,300, new LinearInterpolator(), new OnMarkerAnimationListener() {
+ @Override
+ public void onAnimStart() {
+ Logger.d( TAG, " onAnimStart ---1----> " );
+ }
+
+ @Override
+ public void onAnimEnd() {
+ if ( marker.isDestroyed() ) {
+ return;
+ }
+ marker.startScaleAnimation( 1.2f, 1, 1.2f, 1, 100, new LinearInterpolator(), null );
+ }
+ } );
+ }, delay );
+ }
+
/**
* S = (A ∩ B) ∪ B
* (A ∩ B)作为旧列表需要保留的部分
diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/UserDataMarkerInfoWindowAdapter.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/UserDataMarkerInfoWindowAdapter.java
index 31116f19a2..b038ac044e 100644
--- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/UserDataMarkerInfoWindowAdapter.java
+++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/marker/UserDataMarkerInfoWindowAdapter.java
@@ -54,6 +54,7 @@ public class UserDataMarkerInfoWindowAdapter implements IMogoInfoWindowAdapter {
private View mInfoWindowView = null;
+ private View mContentContainer;
private MogoImageView mUserHeader;
private TextView mContent;
private TextView mTag;
@@ -92,12 +93,21 @@ public class UserDataMarkerInfoWindowAdapter implements IMogoInfoWindowAdapter {
if ( mInfoWindowView == null ) {
mInfoWindowView = LayoutInflater.from( mContext ).inflate( R.layout.view_map_data_user_info_window, null );
+ mContentContainer = mInfoWindowView.findViewById( R.id.module_service_id_marker_content );
mUserHeader = mInfoWindowView.findViewById( R.id.module_service_id_user_header );
mContent = mInfoWindowView.findViewById( R.id.module_service_id_content );
mTag = mInfoWindowView.findViewById( R.id.module_service_id_tag );
mCall = mInfoWindowView.findViewById( R.id.module_service_id_call );
+ }
- mCall.setVisibility( DebugConfig.getCarMachineType() == DebugConfig.CAR_MACHINE_TYPE_BYD ? View.GONE : View.VISIBLE );
+ if ( DebugConfig.getCarMachineType() == DebugConfig.CAR_MACHINE_TYPE_BYD ) {
+ mContentContainer.setPadding(
+ mContentContainer.getPaddingLeft(),
+ mContentContainer.getPaddingTop(),
+ mContentContainer.getResources().getDimensionPixelSize( R.dimen.module_service_id_marker_content_paddingRight_widthoutCall ),
+ mContentContainer.getPaddingBottom()
+ );
+ mCall.setVisibility( View.GONE );
}
try {
diff --git a/modules/mogo-module-service/src/main/res/drawable-ldpi/icon_map_marker_living.png b/modules/mogo-module-service/src/main/res/drawable-ldpi/icon_map_marker_living.png
index f66b3e8176..48d2485529 100644
Binary files a/modules/mogo-module-service/src/main/res/drawable-ldpi/icon_map_marker_living.png and b/modules/mogo-module-service/src/main/res/drawable-ldpi/icon_map_marker_living.png differ
diff --git a/modules/mogo-module-service/src/main/res/drawable-ldpi/icon_map_marker_living_light.png b/modules/mogo-module-service/src/main/res/drawable-ldpi/icon_map_marker_living_light.png
index b52aab6bad..0feeb0f206 100644
Binary files a/modules/mogo-module-service/src/main/res/drawable-ldpi/icon_map_marker_living_light.png and b/modules/mogo-module-service/src/main/res/drawable-ldpi/icon_map_marker_living_light.png differ
diff --git a/modules/mogo-module-service/src/main/res/drawable-mdpi/icon_map_marker_living.png b/modules/mogo-module-service/src/main/res/drawable-mdpi/icon_map_marker_living.png
index f66b3e8176..48d2485529 100644
Binary files a/modules/mogo-module-service/src/main/res/drawable-mdpi/icon_map_marker_living.png and b/modules/mogo-module-service/src/main/res/drawable-mdpi/icon_map_marker_living.png differ
diff --git a/modules/mogo-module-service/src/main/res/drawable-mdpi/icon_map_marker_living_light.png b/modules/mogo-module-service/src/main/res/drawable-mdpi/icon_map_marker_living_light.png
index b52aab6bad..0feeb0f206 100644
Binary files a/modules/mogo-module-service/src/main/res/drawable-mdpi/icon_map_marker_living_light.png and b/modules/mogo-module-service/src/main/res/drawable-mdpi/icon_map_marker_living_light.png differ
diff --git a/modules/mogo-module-service/src/main/res/drawable-xhdpi/icon_map_marker_living.png b/modules/mogo-module-service/src/main/res/drawable-xhdpi/icon_map_marker_living.png
old mode 100755
new mode 100644
index 3780ecf9b9..d6f1dea192
Binary files a/modules/mogo-module-service/src/main/res/drawable-xhdpi/icon_map_marker_living.png and b/modules/mogo-module-service/src/main/res/drawable-xhdpi/icon_map_marker_living.png differ
diff --git a/modules/mogo-module-service/src/main/res/drawable-xhdpi/icon_map_marker_living_light.png b/modules/mogo-module-service/src/main/res/drawable-xhdpi/icon_map_marker_living_light.png
old mode 100755
new mode 100644
index ae94e4bc3d..1b87f0ce86
Binary files a/modules/mogo-module-service/src/main/res/drawable-xhdpi/icon_map_marker_living_light.png and b/modules/mogo-module-service/src/main/res/drawable-xhdpi/icon_map_marker_living_light.png differ
diff --git a/modules/mogo-module-service/src/main/res/layout/view_map_data_user_info_window.xml b/modules/mogo-module-service/src/main/res/layout/view_map_data_user_info_window.xml
index 0967298a46..fe110eba36 100644
--- a/modules/mogo-module-service/src/main/res/layout/view_map_data_user_info_window.xml
+++ b/modules/mogo-module-service/src/main/res/layout/view_map_data_user_info_window.xml
@@ -13,6 +13,7 @@
android:id="@+id/module_service_id_marker_content"
android:layout_width="wrap_content"
android:layout_height="@dimen/module_services_info_window_height"
+ android:paddingRight="@dimen/module_service_id_marker_content_paddingRight"
android:background="@drawable/module_services_driver_blue_info"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
@@ -44,7 +45,7 @@
app:layout_constraintStart_toEndOf="@+id/module_service_id_user_header"
app:layout_constraintTop_toTopOf="@+id/module_service_id_user_header"
app:layout_goneMarginRight="@dimen/dp_30"
- tools:text="诗" />
+ tools:text="诗一样的远方的远方" />
20dp
- 8dp
+ 4dp
100px
117px
60px
@@ -21,4 +21,5 @@
24px
20px
120px
+ 20px
\ No newline at end of file
diff --git a/modules/mogo-module-service/src/main/res/values/dimens.xml b/modules/mogo-module-service/src/main/res/values/dimens.xml
index 6faf47f1e0..fd1066746d 100644
--- a/modules/mogo-module-service/src/main/res/values/dimens.xml
+++ b/modules/mogo-module-service/src/main/res/values/dimens.xml
@@ -1,7 +1,7 @@
16dp
- 4dp
+ 2dp
56px
65px
35px
@@ -20,4 +20,6 @@
14px
12px
64px
+ 6.5px
+ 10px
\ No newline at end of file
diff --git a/modules/mogo-module-share/build.gradle b/modules/mogo-module-share/build.gradle
index f92067fb12..5a6e9d9be2 100644
--- a/modules/mogo-module-share/build.gradle
+++ b/modules/mogo-module-share/build.gradle
@@ -24,9 +24,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/modules/mogo-module-share/consumer-rules.pro b/modules/mogo-module-share/consumer-rules.pro
index 2aeb062b9a..3cae82b2c2 100644
--- a/modules/mogo-module-share/consumer-rules.pro
+++ b/modules/mogo-module-share/consumer-rules.pro
@@ -1,2 +1,5 @@
#-----ShareModule-----
--keep class com.mogo.module.share.bean.*{*;}
\ No newline at end of file
+-keep class com.mogo.module.share.bean.**{*;}
+-keep class com.mogo.module.share.constant.**{*;}
+-keep class com.mogo.module.share.manager.ISeekHelpListener
+-keep class com.mogo.module.share.net.ShareApiService
diff --git a/modules/mogo-module-share/proguard-rules.pro b/modules/mogo-module-share/proguard-rules.pro
index 8afcc916d8..b436d973dd 100644
--- a/modules/mogo-module-share/proguard-rules.pro
+++ b/modules/mogo-module-share/proguard-rules.pro
@@ -21,4 +21,7 @@
#-renamesourcefileattribute SourceFile
#-----ShareModule-----
--keep class com.mogo.module.share.bean.*{*;}
\ No newline at end of file
+-keep class com.mogo.module.share.bean.**{*;}
+-keep class com.mogo.module.share.constant.**{*;}
+-keep class com.mogo.module.share.manager.ISeekHelpListener
+-keep class com.mogo.module.share.net.ShareApiService
\ No newline at end of file
diff --git a/modules/mogo-module-share/src/main/java/com/mogo/module/share/dialog/LaucherShareDialog.java b/modules/mogo-module-share/src/main/java/com/mogo/module/share/dialog/LaucherShareDialog.java
index 0a2e936abb..06a161a806 100644
--- a/modules/mogo-module-share/src/main/java/com/mogo/module/share/dialog/LaucherShareDialog.java
+++ b/modules/mogo-module-share/src/main/java/com/mogo/module/share/dialog/LaucherShareDialog.java
@@ -64,6 +64,8 @@ public class LaucherShareDialog extends BaseFloatDialog implements View.OnClickL
public LaucherShareDialog(Context context) {
super(context);
+// getWindow().setWindowAnimations(R.style.ShareDialogAnim);
+
this.mContext = context;
mApis = (IMogoServiceApis) ARouter.getInstance().build( MogoServicePaths.PATH_SERVICE_APIS ).navigation(context);
mAnalytics = mApis.getAnalyticsApi();
diff --git a/modules/mogo-module-share/src/main/res/anim/module_share_dialog_enter_anim.xml b/modules/mogo-module-share/src/main/res/anim/module_share_dialog_enter_anim.xml
new file mode 100644
index 0000000000..a49af94353
--- /dev/null
+++ b/modules/mogo-module-share/src/main/res/anim/module_share_dialog_enter_anim.xml
@@ -0,0 +1,13 @@
+
+
+
+
\ No newline at end of file
diff --git a/modules/mogo-module-share/src/main/res/anim/module_share_dialog_exit_anim.xml b/modules/mogo-module-share/src/main/res/anim/module_share_dialog_exit_anim.xml
new file mode 100644
index 0000000000..e0914a5b11
--- /dev/null
+++ b/modules/mogo-module-share/src/main/res/anim/module_share_dialog_exit_anim.xml
@@ -0,0 +1,13 @@
+
+
+
+
\ No newline at end of file
diff --git a/modules/mogo-module-share/src/main/res/values/styles.xml b/modules/mogo-module-share/src/main/res/values/styles.xml
index 389862f71e..b07cecf669 100644
--- a/modules/mogo-module-share/src/main/res/values/styles.xml
+++ b/modules/mogo-module-share/src/main/res/values/styles.xml
@@ -13,4 +13,9 @@
- @color/all_transparent_white
- @color/all_transparent_white
+
+
diff --git a/modules/mogo-module-splash-noop/consumer-rules.pro b/modules/mogo-module-splash-noop/consumer-rules.pro
index e69de29bb2..880adfb994 100644
--- a/modules/mogo-module-splash-noop/consumer-rules.pro
+++ b/modules/mogo-module-splash-noop/consumer-rules.pro
@@ -0,0 +1 @@
+-keep class com.zhidao.mogo.module.splash.BydConst
\ No newline at end of file
diff --git a/modules/mogo-module-splash-noop/proguard-rules.pro b/modules/mogo-module-splash-noop/proguard-rules.pro
index 481bb43481..f5e721d80f 100644
--- a/modules/mogo-module-splash-noop/proguard-rules.pro
+++ b/modules/mogo-module-splash-noop/proguard-rules.pro
@@ -18,4 +18,6 @@
# If you keep the line number information, uncomment this to
# hide the original source file name.
-#-renamesourcefileattribute SourceFile
\ No newline at end of file
+#-renamesourcefileattribute SourceFile
+
+-keep class com.zhidao.mogo.module.splash.BydConst
\ No newline at end of file
diff --git a/modules/mogo-module-splash/consumer-rules.pro b/modules/mogo-module-splash/consumer-rules.pro
index e69de29bb2..77f2669d8c 100644
--- a/modules/mogo-module-splash/consumer-rules.pro
+++ b/modules/mogo-module-splash/consumer-rules.pro
@@ -0,0 +1,2 @@
+#-----ModuleSplash-----
+-keep class com.zhidao.mogo.module.splash.SplashConst.*{*;}
\ No newline at end of file
diff --git a/modules/mogo-module-splash/proguard-rules.pro b/modules/mogo-module-splash/proguard-rules.pro
index 481bb43481..f64d6a4170 100644
--- a/modules/mogo-module-splash/proguard-rules.pro
+++ b/modules/mogo-module-splash/proguard-rules.pro
@@ -18,4 +18,7 @@
# If you keep the line number information, uncomment this to
# hide the original source file name.
-#-renamesourcefileattribute SourceFile
\ No newline at end of file
+#-renamesourcefileattribute SourceFile
+
+#-----ModuleSplash-----
+-keep class com.zhidao.mogo.module.splash.SplashConst.*{*;}
\ No newline at end of file
diff --git a/modules/mogo-module-v2x/build.gradle b/modules/mogo-module-v2x/build.gradle
index a213b118d1..707f339a23 100644
--- a/modules/mogo-module-v2x/build.gradle
+++ b/modules/mogo-module-v2x/build.gradle
@@ -27,9 +27,7 @@ android {
buildTypes {
release {
- minifyEnabled true
- zipAlignEnabled true
- consumerProguardFiles 'consumer-rules.pro'
+ minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
diff --git a/modules/mogo-module-v2x/consumer-rules.pro b/modules/mogo-module-v2x/consumer-rules.pro
index 009c7561da..d35f77a3fa 100644
--- a/modules/mogo-module-v2x/consumer-rules.pro
+++ b/modules/mogo-module-v2x/consumer-rules.pro
@@ -1,3 +1,17 @@
#-----V2XModule-----
--keep class com.tencent.* { *; }
--keep class com.mogo.module.v2x.entity.* { *; }
\ No newline at end of file
+-keep class com.tencent.** { *; }
+-keep class com.mogo.module.v2x.entity.net.** { *; }
+-keep class com.mogo.module.v2x.manager.V2XStatusDescriptor
+-keep class com.mogo.module.v2x.utils.SpanUtils.Align
+-keep class com.mogo.module.v2x.utils.TimeConstants.Unit
+-keep interface * implements com.mogo.module.v2x.alarm.V2XAlarmServer.OnFatigueDrivingListener
+-keep interface * implements com.mogo.module.v2x.listener.CarStatusListener
+-keep interface * implements com.mogo.module.v2x.listener.V2XWindowStatusListener
+-keep interface * implements com.mogo.module.v2x.network.V2XApiService
+-keep interface * implements com.mogo.module.v2x.network.V2XRefreshCallback
+-keep interface * implements com.mogo.module.v2x.scenario.view.**{*;}
+-keep interface * implements com.mogo.module.v2x.scenario.impl.**{*;}
+-keep interface * implements com.mogo.module.v2x.scenario.IV2XScenario
+-keep interface * implements com.mogo.module.v2x.scenario.IV2XScenarioManager
+-keep class com.mogo.module.v2x.voice.**{*;}
+-keep class com.mogo.module.v2x.V2XConst
diff --git a/modules/mogo-module-v2x/proguard-rules.pro b/modules/mogo-module-v2x/proguard-rules.pro
index ec6d67332b..c7797fa760 100644
--- a/modules/mogo-module-v2x/proguard-rules.pro
+++ b/modules/mogo-module-v2x/proguard-rules.pro
@@ -21,5 +21,19 @@
#-renamesourcefileattribute SourceFile
#-----V2XModule-----
--keep class com.tencent.* { *; }
--keep class com.mogo.module.v2x.entity.* { *; }
\ No newline at end of file
+-keep class com.tencent.** { *; }
+-keep class com.mogo.module.v2x.entity.net.** { *; }
+-keep class com.mogo.module.v2x.manager.V2XStatusDescriptor
+-keep class com.mogo.module.v2x.utils.SpanUtils.Align
+-keep class com.mogo.module.v2x.utils.TimeConstants.Unit
+-keep interface * implements com.mogo.module.v2x.alarm.V2XAlarmServer.OnFatigueDrivingListener
+-keep interface * implements com.mogo.module.v2x.listener.CarStatusListener
+-keep interface * implements com.mogo.module.v2x.listener.V2XWindowStatusListener
+-keep interface * implements com.mogo.module.v2x.network.V2XApiService
+-keep interface * implements com.mogo.module.v2x.network.V2XRefreshCallback
+-keep interface * implements com.mogo.module.v2x.scenario.view.**{*;}
+-keep interface * implements com.mogo.module.v2x.scenario.impl.**{*;}
+-keep interface * implements com.mogo.module.v2x.scenario.IV2XScenario
+-keep interface * implements com.mogo.module.v2x.scenario.IV2XScenarioManager
+-keep class com.mogo.module.v2x.voice.**{*;}
+-keep class com.mogo.module.v2x.V2XConst
\ No newline at end of file
diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XModuleProvider.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XModuleProvider.java
index fd3e901346..c8816bf2ca 100644
--- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XModuleProvider.java
+++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/V2XModuleProvider.java
@@ -18,10 +18,10 @@ import com.mogo.map.marker.IMogoMarkerClickListener;
import com.mogo.map.navi.IMogoNaviListener;
import com.mogo.module.common.entity.MarkerExploreWay;
import com.mogo.module.common.entity.MarkerShowEntity;
+import com.mogo.module.common.entity.V2XMessageEntity;
import com.mogo.module.service.ServiceConst;
import com.mogo.module.v2x.entity.net.V2XSeekHelpRes;
import com.mogo.module.v2x.entity.net.V2XStrategyPushRes;
-import com.mogo.module.common.entity.V2XMessageEntity;
import com.mogo.module.v2x.network.V2XRefreshCallback;
import com.mogo.module.v2x.receiver.SceneBroadcastReceiver;
import com.mogo.module.v2x.scenario.impl.V2XScenarioManager;
@@ -132,10 +132,12 @@ public class V2XModuleProvider implements
intentFilter.addAction(V2XConst.BROADCAST_SCENE_HANDLER_ACTION);
localBroadcastManager.registerReceiver(localReceiver, intentFilter);
- // TODO 这是测试页面
- V2XServiceManager
- .getIMogoWindowManager()
- .addView(new V2XTestConsoleWindow(context), 0, 0, false);
+ if (BuildConfig.DEBUG) {
+ // TODO 这是测试页面
+ V2XServiceManager
+ .getIMogoWindowManager()
+ .addView(new V2XTestConsoleWindow(context), 0, 0, false);
+ }
}
private void initVoice(Context context) {
diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XBaseViewHolder.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XBaseViewHolder.java
new file mode 100644
index 0000000000..d7c9aa2c4e
--- /dev/null
+++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XBaseViewHolder.java
@@ -0,0 +1,210 @@
+package com.mogo.module.v2x.adapter.holder;
+
+import android.view.Gravity;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.widget.TextView;
+
+import androidx.annotation.NonNull;
+import androidx.recyclerview.widget.RecyclerView;
+
+import com.mogo.commons.voice.AIAssist;
+import com.mogo.map.MogoLatLng;
+import com.mogo.map.navi.IMogoNaviListener;
+import com.mogo.map.navi.MogoNaviInfo;
+import com.mogo.map.navi.MogoTraffic;
+import com.mogo.module.common.entity.MarkerExploreWay;
+import com.mogo.module.common.entity.MarkerLocation;
+import com.mogo.module.v2x.R;
+import com.mogo.module.v2x.V2XConst;
+import com.mogo.module.v2x.V2XServiceManager;
+import com.mogo.module.v2x.utils.ChartingUtil;
+import com.mogo.module.v2x.utils.RoadConditionUtils;
+import com.mogo.module.v2x.utils.ToastUtils;
+import com.mogo.module.v2x.utils.TrackUtils;
+import com.mogo.module.v2x.utils.V2XUtils;
+
+import static com.mogo.module.v2x.V2XConst.MODULE_NAME;
+
+/**
+ * V2X展示视图公用的实现
+ *
+ * @author donghongyu
+ */
+public abstract class V2XBaseViewHolder
+ extends RecyclerView.ViewHolder
+ implements IMogoNaviListener {
+
+ public V2XBaseViewHolder(@NonNull View itemView) {
+ super(itemView);
+ }
+
+ /**
+ * 延迟关闭窗体视图
+ */
+ public abstract void delayedCloseWindow();
+
+ /**
+ * 点赞
+ */
+ public void triggerZan(MarkerExploreWay noveltyInfo) {
+ try {
+ AIAssist.getInstance(V2XUtils.getApp()).speakTTSVoice("已点赞", null);
+ showTip("已点赞");
+ if (noveltyInfo != null) {
+ V2XServiceManager.getV2XMarkerService()
+ .getV2XRefreshModel()
+ .giveLikeLiveVideo(null, noveltyInfo.getSn());
+
+ TrackUtils.trackV2xRoadEvent(
+ noveltyInfo.getInfoId(),
+ noveltyInfo.getSn(),
+ V2XConst.V2X_ROAD_ZAN);
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ delayedCloseWindow();
+ }
+
+ /**
+ * 打电话
+ */
+ public void triggerCallChart(MarkerExploreWay noveltyInfo) {
+ try {
+ MarkerLocation location = new MarkerLocation();
+ location.setLat(noveltyInfo.getLocation().getLat());
+ location.setLon(noveltyInfo.getLocation().getLon());
+
+ ChartingUtil.callChatting(noveltyInfo.getUserInfo(), location);
+
+ TrackUtils.trackV2xRoadEvent(
+ noveltyInfo.getInfoId(),
+ noveltyInfo.getSn(),
+ V2XConst.V2X_ROAD_CHAT);
+ } catch (Exception e) {
+ e.printStackTrace();
+ ToastUtils.showShort("用户信息异常");
+ }
+ delayedCloseWindow();
+ }
+
+ /**
+ * 反馈路况错误
+ */
+ public void triggerReportErr(MarkerExploreWay noveltyInfo) {
+ try {
+ RoadConditionUtils.sendDataErrorReceiverInfo(
+ noveltyInfo.getPoiType(),
+ noveltyInfo.getInfoId(),
+ "1");
+
+ TrackUtils.trackV2xRoadEvent(
+ noveltyInfo.getInfoId(),
+ noveltyInfo.getSn(),
+ V2XConst.V2X_ROAD_REPORT_ERROR);
+ } catch (Exception e) {
+ e.printStackTrace();
+ ToastUtils.showShort("路况信息异常");
+ }
+ delayedCloseWindow();
+ }
+
+ /**
+ * 反馈路况正确
+ */
+ public void triggerReportTrue(MarkerExploreWay noveltyInfo) {
+ try {
+ RoadConditionUtils.sendDataErrorReceiverInfo(
+ noveltyInfo.getPoiType(),
+ noveltyInfo.getInfoId(),
+ "2");
+
+ TrackUtils.trackV2xRoadEvent(
+ noveltyInfo.getInfoId(),
+ noveltyInfo.getSn(),
+ V2XConst.V2X_ROAD_REPORT_RIGHT);
+ } catch (Exception e) {
+ e.printStackTrace();
+ ToastUtils.showShort("路况信息异常");
+ }
+ delayedCloseWindow();
+ }
+
+ /**
+ * 导航规划路线
+ */
+ public void triggerStartNavi(MarkerExploreWay noveltyInfo) {
+ try {
+ MogoLatLng endPoint = new MogoLatLng(
+ noveltyInfo.getLocation().getLat(),
+ noveltyInfo.getLocation().getLon());
+
+ V2XServiceManager.getNavi().naviTo(endPoint);
+ V2XServiceManager.getMogoRegisterCenter().unregisterMogoNaviListener(MODULE_NAME);
+ V2XServiceManager.getMogoRegisterCenter().registerMogoNaviListener(MODULE_NAME, this);
+
+ TrackUtils.trackV2xRoadEvent(
+ noveltyInfo.getInfoId(),
+ noveltyInfo.getSn(),
+ V2XConst.V2X_ROAD_NAVI);
+ } catch (Exception e) {
+ e.printStackTrace();
+ ToastUtils.showShort("路况信息异常");
+ }
+ delayedCloseWindow();
+ }
+
+ /**
+ * 显示自定义 Toast
+ *
+ * @param msg
+ */
+ public void showTip(String msg) {
+ ToastUtils.setGravity(Gravity.CENTER, 0, 0);
+ View toastView = LayoutInflater.from(V2XServiceManager.getContext()).inflate(R.layout.toast_view, null);
+ TextView msgView = toastView.findViewById(R.id.tvFeedbackContent);
+ msgView.setText(msg);
+ ToastUtils.showCustomShort(toastView);
+ }
+
+ @Override
+ public void onInitNaviFailure() {
+
+ }
+
+ @Override
+ public void onInitNaviSuccess() {
+
+ }
+
+ @Override
+ public void onNaviInfoUpdate(MogoNaviInfo naviinfo) {
+
+ }
+
+ @Override
+ public void onStartNavi() {
+
+ }
+
+ @Override
+ public void onStopNavi() {
+
+ }
+
+ @Override
+ public void onCalculateSuccess() {
+ V2XServiceManager.getNavi().startNavi(true);
+ }
+
+ @Override
+ public void onoCalculateFailed() {
+
+ }
+
+ @Override
+ public void onUpdateTraffic(MogoTraffic traffic) {
+
+ }
+}
diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XLiveVideoVH.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XLiveVideoVH.java
index 043fe6b31f..61dafb34ce 100644
--- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XLiveVideoVH.java
+++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XLiveVideoVH.java
@@ -1,44 +1,19 @@
package com.mogo.module.v2x.adapter.holder;
-import android.content.Intent;
-import android.text.TextUtils;
-import android.view.Gravity;
import android.view.LayoutInflater;
-import android.view.View;
import android.view.ViewGroup;
-import android.widget.ImageView;
-import android.widget.TextView;
-import androidx.recyclerview.widget.RecyclerView;
-
-import com.mogo.commons.debug.DebugConfig;
-import com.mogo.commons.voice.AIAssist;
import com.mogo.module.common.entity.MarkerCarInfo;
-import com.mogo.module.common.entity.MarkerLocation;
import com.mogo.module.common.entity.MarkerUserInfo;
import com.mogo.module.common.entity.V2XEventShowEntity;
+import com.mogo.module.common.entity.V2XLiveCarInfoEntity;
import com.mogo.module.common.entity.V2XRoadEventEntity;
import com.mogo.module.v2x.R;
import com.mogo.module.v2x.V2XConst;
-import com.mogo.module.common.entity.V2XLiveCarInfoEntity;
-import com.mogo.module.v2x.V2XServiceManager;
-import com.mogo.module.v2x.entity.net.V2XUserInfoRes;
-import com.mogo.module.v2x.network.V2XRefreshCallback;
import com.mogo.module.v2x.scenario.scene.road.V2XRoadEventScenario;
-import com.mogo.module.v2x.utils.ChartingUtil;
-import com.mogo.module.v2x.utils.ToastUtils;
import com.mogo.module.v2x.utils.TrackUtils;
-import com.mogo.module.v2x.utils.V2XUtils;
import com.mogo.module.v2x.view.V2XLiveGSYVideoView;
-import com.mogo.module.v2x.voice.V2XVoiceCallbackListener;
-import com.mogo.module.v2x.voice.V2XVoiceConstants;
-import com.mogo.module.v2x.voice.V2XVoiceManager;
import com.mogo.service.imageloader.MogoImageView;
-import com.mogo.utils.logger.Logger;
-
-import static android.view.View.GONE;
-import static android.view.View.VISIBLE;
-import static com.mogo.module.v2x.V2XConst.MODULE_NAME;
/**
* author : donghongyu
@@ -47,15 +22,11 @@ import static com.mogo.module.v2x.V2XConst.MODULE_NAME;
* desc : 直播类型的卡片
* version: 1.0
*/
-public class V2XLiveVideoVH extends RecyclerView.ViewHolder {
+public class V2XLiveVideoVH extends V2XBaseViewHolder {
private V2XLiveGSYVideoView videoPlayer;
private MogoImageView ivReportHead;
- // 控制按钮
- private ImageView ivRoadCallChart;
- private ImageView ivRoadEventLike;
-
// 上传事件的用户信息
private MarkerUserInfo mUserInfo = new MarkerUserInfo();
// 直播车机数据
@@ -63,55 +34,10 @@ public class V2XLiveVideoVH extends RecyclerView.ViewHolder {
// 预警的道路事件数据
private V2XRoadEventEntity mV2XRoadEventEntity;
- // 拨打车聊聊语音回调
- private V2XVoiceCallbackListener v2XVoiceCallbackCallListener = new V2XVoiceCallbackListener() {
- @Override
- public void onCallback(String command, Intent intent) {
- if (mUserInfo != null && !TextUtils.isEmpty(mUserInfo.getSn())) {
- roadCallChart();
- }
- }
- };
- // 点赞语音回调
- private V2XVoiceCallbackListener v2XVoiceCallbackLickListener = new V2XVoiceCallbackListener() {
- @Override
- public void onCallback(String command, Intent intent) {
- if (mV2XLiveCarEntity != null) {
- handlerZan(mV2XLiveCarEntity.getSn());
- }
- }
- };
-
public V2XLiveVideoVH(ViewGroup viewGroup) {
super(LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.item_v2x_live_video, viewGroup, false));
videoPlayer = itemView.findViewById(R.id.videoPlayer);
ivReportHead = itemView.findViewById(R.id.ivReportHead);
-
- ivRoadCallChart = itemView.findViewById(R.id.ivRoadCallChart);
- ivRoadEventLike = itemView.findViewById(R.id.ivRoadEventLike);
-
- // 设置视图状态监听
- itemView.addOnAttachStateChangeListener(new View.OnAttachStateChangeListener() {
- @Override
- public void onViewAttachedToWindow(View v) {
- //Logger.w(MODULE_NAME, "列表View V2XLiveVideoVH 触发 onViewAttachedToWindow");
- // 注册语音交互
- V2XVoiceManager.INSTANCE
- .registerWakeCmd(V2XVoiceConstants.COMMAND_ZHIDAO_V2X_CALL_CHATTING,
- v2XVoiceCallbackCallListener)
- .registerWakeCmd(V2XVoiceConstants.COMMAND_ZHIDAO_V2X_ZAN,
- v2XVoiceCallbackLickListener)
- .registerUnWakeVoice(V2XVoiceConstants.COMMAND_V2X_TO_CHAT_MORE_UN_WAKEUP,
- v2XVoiceCallbackCallListener)
- .registerUnWakeVoice(V2XVoiceConstants.COMMAND_V2X_TO_ZAN_UN_WAKEUP,
- v2XVoiceCallbackLickListener);
- }
-
- @Override
- public void onViewDetachedFromWindow(View v) {
- //Logger.w(MODULE_NAME, "列表View V2XLiveVideoVH 触发 onViewDetachedFromWindow");
- }
- });
}
public void initView(V2XEventShowEntity v2XLiveCarEntity) {
@@ -126,119 +52,12 @@ public class V2XLiveVideoVH extends RecyclerView.ViewHolder {
MarkerCarInfo.CarLiveInfo carLiveInfo = new MarkerCarInfo.CarLiveInfo();
carLiveInfo.setVideoSn(v2XLiveCarEntity.getSn());
videoPlayer.setCarLiveInfo(carLiveInfo);
-
- ivRoadEventLike.setVisibility(VISIBLE);
-
- ivRoadCallChart.setOnClickListener(v -> {
- ivRoadCallChart.setVisibility(GONE);
- roadCallChart();
- });
- ivRoadEventLike.setOnClickListener(v -> {
- handlerZan(v2XLiveCarEntity.getSn());
- });
-
- requestUserInfo(v2XLiveCarEntity);
- }
-
- private void roadCallChart() {
- MarkerLocation location = new MarkerLocation();
- ChartingUtil.callChatting(mUserInfo, location);
- }
-
- /**
- * 请求用户信息
- *
- * @param v2XLiveCarEntity 直播信息
- */
- private void requestUserInfo(V2XLiveCarInfoEntity v2XLiveCarEntity) {
- Logger.d(MODULE_NAME, "上报事件的用户SN:" + v2XLiveCarEntity.getSn());
TrackUtils.trackV2xRoadEvent(mV2XRoadEventEntity.getNoveltyInfo().getInfoId(), v2XLiveCarEntity.getSn(), V2XConst.V2X_ROAD_VIDEO);
- // 获取道路事件周边的直播车机
- if (!TextUtils.isEmpty(v2XLiveCarEntity.getSn())) {
- V2XServiceManager
- .getV2XRefreshModel()
- .queryUserInfoBySn(
- v2XLiveCarEntity.getSn(),
- new V2XRefreshCallback() {
- @Override
- public void onSuccess(V2XUserInfoRes result) {
- //Logger.d(MODULE_NAME, "上报事件的用户:" + result);
- if (result != null &&
- result.getResult() != null &&
- result.getResult().getInfo() != null) {
- V2XUserInfoRes.Result.Info infoBean = result.getResult().getInfo();
- if (mUserInfo == null) {
- mUserInfo = new MarkerUserInfo();
- }
- mUserInfo.setSn(infoBean.getSn());
- try {
- if (!TextUtils.isEmpty(infoBean.getCardIdAge())) {
- mUserInfo.setAge(Integer.parseInt(infoBean.getCardIdAge()));
- }
- } catch (NumberFormatException e) {
- e.printStackTrace();
- }
- mUserInfo.setUserName(infoBean.getUserNickName());
- mUserInfo.setUserHead(infoBean.getHeadImgUrl());
- mUserInfo.setGender(infoBean.getCardIdSex());
-
- if (DebugConfig.getCarMachineType() == DebugConfig.CAR_MACHINE_TYPE_SELF_INNOVATE) {
- // 判断是否可以打电话
- ChartingUtil.isCanCall(b -> {
- if (b) {
- // 判断是否可以打电话
- ChartingUtil.isOnLine(mUserInfo.getSn(), b1 -> {
- if (b1) {
- ivRoadCallChart.setVisibility(VISIBLE);
- } else {
- ivRoadCallChart.setVisibility(GONE);
- }
- });
- } else {
- ivRoadCallChart.setVisibility(GONE);
- }
- });
-
- }
- if (!TextUtils.isEmpty(mUserInfo.getUserHead())) {
- V2XServiceManager.getImageLoader()
- .displayImage(mUserInfo.getUserHead(), ivReportHead);
- }
- }
- }
-
- @Override
- public void onFail(String msg) {
- ivRoadCallChart.setVisibility(GONE);
- }
- });
- }
}
- private void handlerZan(String sn) {
- try {
- AIAssist.getInstance(V2XUtils.getApp()).speakTTSVoice("已点赞", null);
- showTip("已点赞");
- V2XServiceManager.getV2XMarkerService()
- .getV2XRefreshModel()
- .giveLikeLiveVideo(null, sn);
- ivReportHead.postDelayed(new Runnable() {
- @Override
- public void run() {
- V2XRoadEventScenario.getInstance().close();
- }
- }, 2000);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
-
- private void showTip(String msg) {
- ToastUtils.setGravity(Gravity.CENTER, 0, 0);
- View toastView = LayoutInflater.from(V2XServiceManager.getContext()).inflate(R.layout.toast_view, null);
- TextView msgView = toastView.findViewById(R.id.tvFeedbackContent);
- msgView.setText(msg);
- ToastUtils.showCustomShort(toastView);
+ @Override
+ public void delayedCloseWindow() {
+ ivReportHead.postDelayed(() -> V2XRoadEventScenario.getInstance().close(), 2000);
}
}
diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XPushEventDetailVH.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XPushEventDetailVH.java
index a4f8226297..c7d4ee87bf 100644
--- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XPushEventDetailVH.java
+++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XPushEventDetailVH.java
@@ -1,30 +1,19 @@
package com.mogo.module.v2x.adapter.holder;
-import android.content.Intent;
import android.text.TextUtils;
-import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
-import android.widget.TextView;
-import androidx.recyclerview.widget.RecyclerView;
-
-import com.mogo.commons.voice.AIAssist;
-import com.mogo.map.MogoLatLng;
-import com.mogo.map.navi.IMogoNaviListener;
-import com.mogo.map.navi.MogoNaviInfo;
-import com.mogo.map.navi.MogoTraffic;
+import com.mogo.module.common.entity.MarkerExploreWay;
import com.mogo.module.common.entity.MarkerLocation;
import com.mogo.module.common.entity.MarkerUserInfo;
+import com.mogo.module.common.entity.V2XPushMessageEntity;
import com.mogo.module.v2x.R;
import com.mogo.module.v2x.V2XServiceManager;
-import com.mogo.module.common.entity.V2XPushMessageEntity;
import com.mogo.module.v2x.scenario.scene.push.V2XPushEventScenario;
import com.mogo.module.v2x.utils.ChartingUtil;
-import com.mogo.module.v2x.utils.ToastUtils;
-import com.mogo.module.v2x.utils.V2XUtils;
import com.mogo.module.v2x.voice.V2XVoiceCallbackListener;
import com.mogo.module.v2x.voice.V2XVoiceConstants;
import com.mogo.module.v2x.voice.V2XVoiceManager;
@@ -40,7 +29,7 @@ import static com.mogo.module.v2x.V2XConst.MODULE_NAME;
* desc : TODO 这里是前瞻演示需求,推送的消息,
* version: 1.0
*/
-public class V2XPushEventDetailVH extends RecyclerView.ViewHolder implements IMogoNaviListener {
+public class V2XPushEventDetailVH extends V2XBaseViewHolder {
private MogoImageView ivImg;
private MogoImageView ivReportHead;
@@ -55,28 +44,25 @@ public class V2XPushEventDetailVH extends RecyclerView.ViewHolder implements IMo
private MarkerUserInfo mUserInfo = new MarkerUserInfo();
private V2XPushMessageEntity mV2XRoadEventEntity;
+ private MarkerExploreWay mNoveltyInfo;
// 语音控制导航
- private V2XVoiceCallbackListener mNaviCb = new V2XVoiceCallbackListener() {
- @Override
- public void onCallback(String command, Intent intent) {
- startNavi();
- }
- };
+ private V2XVoiceCallbackListener mNaviCb = (command, intent) -> triggerStartNavi(mNoveltyInfo);
// 语音控制拨打电话
- private V2XVoiceCallbackListener mCallChartingCb = new V2XVoiceCallbackListener() {
- @Override
- public void onCallback(String command, Intent intent) {
- roadCallChart();
+ private V2XVoiceCallbackListener mCallChartingCb = (command, intent) -> {
+ try {
+ mUserInfo.setSn(mV2XRoadEventEntity.getSn());
+ mUserInfo.setUserHead(mV2XRoadEventEntity.getHeadImgUrl());
+ mUserInfo.setUserName("蘑菇用户");
+ mUserInfo.setGender("男");
+ mUserInfo.setAge(30);
+ triggerCallChart(mNoveltyInfo);
+ } catch (Exception e) {
+ e.printStackTrace();
}
};
// 点赞语音回调
- private V2XVoiceCallbackListener v2XVoiceCallbackLickListener = new V2XVoiceCallbackListener() {
- @Override
- public void onCallback(String command, Intent intent) {
- handlerZan();
- }
- };
+ private V2XVoiceCallbackListener v2XVoiceCallbackLickListener = (command, intent) -> triggerZan(mNoveltyInfo);
public V2XPushEventDetailVH(ViewGroup viewGroup) {
super(LayoutInflater.from(viewGroup.getContext())
@@ -91,24 +77,20 @@ public class V2XPushEventDetailVH extends RecyclerView.ViewHolder implements IMo
ivRoadEventLike = itemView.findViewById(R.id.ivRoadEventLike);
ivRoadEventNav.getParent().getParent().requestDisallowInterceptTouchEvent(true);
- ivRoadEventNav.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- startNavi();
- }
- });
- ivRoadCallChart.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- roadCallChart();
- }
- });
- ivRoadEventLike.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- handlerZan();
+ ivRoadEventNav.setOnClickListener(v -> triggerStartNavi(mNoveltyInfo));
+ ivRoadCallChart.setOnClickListener(v -> {
+ try {
+ mUserInfo.setSn(mV2XRoadEventEntity.getSn());
+ mUserInfo.setUserHead(mV2XRoadEventEntity.getHeadImgUrl());
+ mUserInfo.setUserName("蘑菇用户");
+ mUserInfo.setGender("男");
+ mUserInfo.setAge(30);
+ triggerCallChart(mNoveltyInfo);
+ } catch (Exception e) {
+ e.printStackTrace();
}
});
+ ivRoadEventLike.setOnClickListener(v -> triggerZan(mNoveltyInfo));
// 设置视图状态监听
itemView.addOnAttachStateChangeListener(new View.OnAttachStateChangeListener() {
@@ -153,6 +135,14 @@ public class V2XPushEventDetailVH extends RecyclerView.ViewHolder implements IMo
public void initView(V2XPushMessageEntity v2XRoadEventEntity) {
mV2XRoadEventEntity = v2XRoadEventEntity;
+ mNoveltyInfo = new MarkerExploreWay();
+ mNoveltyInfo.setSn(mV2XRoadEventEntity.getSn());
+ mNoveltyInfo.setInfoId(mV2XRoadEventEntity.getSceneId());
+ MarkerLocation location = new MarkerLocation();
+ location.setLat(mV2XRoadEventEntity.getLat());
+ location.setLon(mV2XRoadEventEntity.getLon());
+ mNoveltyInfo.setLocation(location);
+
if (!TextUtils.isEmpty(v2XRoadEventEntity.getMsgImgUrl())) {
V2XServiceManager.getImageLoader()
.displayImage(v2XRoadEventEntity.getMsgImgUrl(), ivImg);
@@ -170,7 +160,6 @@ public class V2XPushEventDetailVH extends RecyclerView.ViewHolder implements IMo
ivRoadReportTrue.setVisibility(View.GONE);
ivRoadReportErr.setVisibility(View.GONE);
ivRoadEventLike.setVisibility(View.GONE);
-
break;
case "100017"://政府公告
@@ -179,119 +168,16 @@ public class V2XPushEventDetailVH extends RecyclerView.ViewHolder implements IMo
ivRoadEventNav.setVisibility(View.GONE);
ivRoadReportTrue.setVisibility(View.GONE);
ivRoadReportErr.setVisibility(View.GONE);
-
break;
}
-
- }
-
- /**
- * 打电话
- */
- private void roadCallChart() {
- Logger.w(MODULE_NAME, "正在拨打电话。。。。");
- if (mV2XRoadEventEntity != null) {
- MarkerLocation location = new MarkerLocation();
- location.setLon(mV2XRoadEventEntity.getLon());
- location.setLat(mV2XRoadEventEntity.getLat());
- mUserInfo.setSn(mV2XRoadEventEntity.getSn());
- mUserInfo.setUserHead(mV2XRoadEventEntity.getHeadImgUrl());
- mUserInfo.setUserName("蘑菇用户");
- mUserInfo.setGender("男");
- mUserInfo.setAge(30);
- ChartingUtil.callChatting(mUserInfo, location);
- delayedCloseWindow();
- }
- }
-
- /**
- * 点赞
- */
- private void handlerZan() {
- try {
- AIAssist.getInstance(V2XUtils.getApp()).speakTTSVoice("已点赞", null);
- showTip("已点赞");
- if (mV2XRoadEventEntity != null) {
- V2XServiceManager.getV2XMarkerService()
- .getV2XRefreshModel()
- .giveLikeLiveVideo(null, mV2XRoadEventEntity.getSn());
- }
- delayedCloseWindow();
- } catch (Exception e) {
- e.printStackTrace();
- }
}
/**
* 延迟关闭窗体
*/
- private void delayedCloseWindow() {
- itemView.postDelayed(new Runnable() {
- @Override
- public void run() {
- V2XPushEventScenario.getInstance().close();
- }
- }, 1000);
- }
-
- /**
- * 导航规划路线
- */
- private void startNavi() {
- if (mV2XRoadEventEntity != null) {
- MogoLatLng endPoint = new MogoLatLng(mV2XRoadEventEntity.getLat(), mV2XRoadEventEntity.getLon());
- V2XServiceManager.getNavi().naviTo(endPoint);
- V2XServiceManager.getMogoRegisterCenter().unregisterMogoNaviListener(MODULE_NAME);
- V2XServiceManager.getMogoRegisterCenter().registerMogoNaviListener(MODULE_NAME, this);
- delayedCloseWindow();
- }
- }
-
- private void showTip(String msg) {
- ToastUtils.setGravity(Gravity.CENTER, 0, 0);
- View toastView = LayoutInflater.from(V2XServiceManager.getContext()).inflate(R.layout.toast_view, null);
- TextView msgView = toastView.findViewById(R.id.tvFeedbackContent);
- msgView.setText(msg);
- ToastUtils.showCustomShort(toastView);
- }
-
@Override
- public void onCalculateSuccess() {
- V2XServiceManager.getNavi().startNavi(true);
+ public void delayedCloseWindow() {
+ itemView.postDelayed(() -> V2XPushEventScenario.getInstance().close(), 1000);
}
- @Override
- public void onInitNaviFailure() {
-
- }
-
- @Override
- public void onInitNaviSuccess() {
-
- }
-
- @Override
- public void onNaviInfoUpdate(MogoNaviInfo naviinfo) {
-
- }
-
- @Override
- public void onStartNavi() {
-
- }
-
- @Override
- public void onStopNavi() {
-
- }
-
- @Override
- public void onoCalculateFailed() {
-
- }
-
- @Override
- public void onUpdateTraffic(MogoTraffic traffic) {
-
- }
}
diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XRoadEventDetailVH.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XRoadEventDetailVH.java
index 325cd4dcda..165f912f32 100644
--- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XRoadEventDetailVH.java
+++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XRoadEventDetailVH.java
@@ -2,39 +2,29 @@ package com.mogo.module.v2x.adapter.holder;
import android.content.Intent;
import android.text.TextUtils;
-import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
-import androidx.recyclerview.widget.RecyclerView;
-
import com.mogo.commons.debug.DebugConfig;
-import com.mogo.commons.voice.AIAssist;
import com.mogo.module.common.entity.MarkerExploreWay;
-import com.mogo.module.common.entity.MarkerLocation;
import com.mogo.module.common.entity.MarkerUserInfo;
-import com.mogo.module.v2x.R;
-import com.mogo.module.v2x.V2XConst;
-import com.mogo.module.v2x.V2XServiceManager;
-import com.mogo.module.v2x.entity.net.V2XUserInfoRes;
import com.mogo.module.common.entity.V2XEventShowEntity;
import com.mogo.module.common.entity.V2XLiveCarInfoEntity;
import com.mogo.module.common.entity.V2XMessageEntity;
import com.mogo.module.common.entity.V2XRoadEventEntity;
import com.mogo.module.common.entity.V2XWindowTypeEnum;
+import com.mogo.module.v2x.R;
+import com.mogo.module.v2x.V2XServiceManager;
+import com.mogo.module.v2x.entity.net.V2XUserInfoRes;
import com.mogo.module.v2x.network.V2XRefreshCallback;
import com.mogo.module.v2x.scenario.scene.livecar.V2XRoadLiveCarScenario;
import com.mogo.module.v2x.scenario.scene.road.V2XRoadEventScenario;
import com.mogo.module.v2x.scenario.scene.road.V2XRoadEventWindow;
import com.mogo.module.v2x.utils.ChartingUtil;
import com.mogo.module.v2x.utils.EventTypeUtils;
-import com.mogo.module.v2x.utils.RoadConditionUtils;
-import com.mogo.module.v2x.utils.ToastUtils;
-import com.mogo.module.v2x.utils.TrackUtils;
-import com.mogo.module.v2x.utils.V2XUtils;
import com.mogo.module.v2x.voice.V2XVoiceCallbackListener;
import com.mogo.module.v2x.voice.V2XVoiceConstants;
import com.mogo.module.v2x.voice.V2XVoiceManager;
@@ -46,9 +36,7 @@ import com.mogo.utils.network.utils.GsonUtil;
import java.util.ArrayList;
import java.util.Calendar;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
import static android.view.View.GONE;
import static android.view.View.VISIBLE;
@@ -61,7 +49,7 @@ import static com.mogo.module.v2x.V2XConst.MODULE_NAME;
* desc : 道路事件详情
* version: 1.0
*/
-public class V2XRoadEventDetailVH extends RecyclerView.ViewHolder {
+public class V2XRoadEventDetailVH extends V2XBaseViewHolder {
private MogoImageView ivEventImg;
private MogoImageView ivReportHead;
private ImageView ivEventPlay;
@@ -79,7 +67,7 @@ public class V2XRoadEventDetailVH extends RecyclerView.ViewHolder {
// 上传事件的用户信息
- private MarkerUserInfo mUserInfo = new MarkerUserInfo();
+ private MarkerUserInfo mUserInfo;
// 当前的新鲜事儿信息
private MarkerExploreWay mNoveltyInfo;
private V2XRoadEventEntity mV2XRoadEventEntity;
@@ -89,28 +77,28 @@ public class V2XRoadEventDetailVH extends RecyclerView.ViewHolder {
private V2XVoiceCallbackListener v2XVoiceCallbackCallListener = new V2XVoiceCallbackListener() {
@Override
public void onCallback(String command, Intent intent) {
- roadCallChart(mNoveltyInfo);
+ triggerCallChart(mNoveltyInfo);
}
};
// 点赞语音回调
private V2XVoiceCallbackListener v2XVoiceCallbackLickListener = new V2XVoiceCallbackListener() {
@Override
public void onCallback(String command, Intent intent) {
- handlerZan(mNoveltyInfo);
+ triggerZan(mNoveltyInfo);
}
};
// 反馈"正确"语音回调
private V2XVoiceCallbackListener v2XVoiceCallbackReportTrueListener = new V2XVoiceCallbackListener() {
@Override
public void onCallback(String command, Intent intent) {
- roadReportTrue(mNoveltyInfo);
+ triggerReportTrue(mNoveltyInfo);
}
};
// 反馈"错误"语音回调
private V2XVoiceCallbackListener v2XVoiceCallbackReportErrorListener = new V2XVoiceCallbackListener() {
@Override
public void onCallback(String command, Intent intent) {
- roadReportErr(mNoveltyInfo);
+ triggerReportErr(mNoveltyInfo);
}
};
// 反馈"错误"语音回调
@@ -174,12 +162,13 @@ public class V2XRoadEventDetailVH extends RecyclerView.ViewHolder {
}
mV2XEventShowEntity = v2XEventShowEntity;
mV2XRoadEventEntity = v2XEventShowEntity.getV2XRoadEventEntity();
+
if (mV2XRoadEventEntity == null) {
return;
}
mNoveltyInfo = mV2XRoadEventEntity.getNoveltyInfo();
if (mNoveltyInfo != null) {
- //Logger.d(MODULE_NAME, "mContentData:" + mContentData);
+ mUserInfo = mNoveltyInfo.getUserInfo();
if (!ArrayUtils.isEmpty(mNoveltyInfo.getItems())) {
String imgUrl = mNoveltyInfo.getItems().get(0).getThumbnail();
if (TextUtils.isEmpty(imgUrl)) {
@@ -245,19 +234,18 @@ public class V2XRoadEventDetailVH extends RecyclerView.ViewHolder {
}
ivEventReportTrue.setOnClickListener(v -> {
- roadReportTrue(mNoveltyInfo);
+ triggerReportTrue(mNoveltyInfo);
});
ivEventReportErr.setOnClickListener(v -> {
- roadReportErr(mNoveltyInfo);
+ triggerReportErr(mNoveltyInfo);
});
ivEventCallChart.setOnClickListener(v -> {
ivEventCallChart.setVisibility(GONE);
- roadCallChart(mNoveltyInfo);
+ triggerCallChart(mNoveltyInfo);
});
ivEventZan.setOnClickListener(v -> {
- handlerZan(mNoveltyInfo);
+ triggerZan(mNoveltyInfo);
});
-
}
} catch (Exception e) {
e.printStackTrace();
@@ -294,6 +282,11 @@ public class V2XRoadEventDetailVH extends RecyclerView.ViewHolder {
}
}
+ /**
+ * 为了给车聊聊更多的信息需要重新查询一次
+ *
+ * @param noveltyInfo
+ */
private void requestUserInfo(MarkerExploreWay noveltyInfo) {
Logger.d(MODULE_NAME, "上报事件的用户SN:" + noveltyInfo.getSn());
// 获取道路事件周边的直播车机
@@ -322,6 +315,9 @@ public class V2XRoadEventDetailVH extends RecyclerView.ViewHolder {
mUserInfo.setUserHead(infoBean.getHeadImgUrl());
mUserInfo.setGender(infoBean.getCardIdSex());
+ // 重新设置用户信息
+ mNoveltyInfo.setUserInfo(mUserInfo);
+
if (DebugConfig.getCarMachineType() == DebugConfig.CAR_MACHINE_TYPE_SELF_INNOVATE) {
// 判断是否可以打电话
ChartingUtil.isCanCall(b -> {
@@ -350,86 +346,17 @@ public class V2XRoadEventDetailVH extends RecyclerView.ViewHolder {
}
}
-
- /**
- * 打电话
- */
- private void roadCallChart(MarkerExploreWay noveltyInfo) {
- MarkerLocation location = new MarkerLocation();
- mUserInfo.setSn(noveltyInfo.getSn());
- ChartingUtil.callChatting(mUserInfo, location);
- TrackUtils.trackV2xRoadEvent(noveltyInfo.getInfoId(), noveltyInfo.getUserInfo().getSn(), V2XConst.V2X_ROAD_CHAT);
- }
-
- /**
- * 反馈路况错误
- */
- private void roadReportErr(MarkerExploreWay noveltyInfo) {
- if (noveltyInfo != null) {
- RoadConditionUtils.sendDataErrorReceiverInfo(
- noveltyInfo.getPoiType(),
- noveltyInfo.getInfoId(),
- "1");
-
- TrackUtils.trackV2xRoadEvent(noveltyInfo.getInfoId(), noveltyInfo.getUserInfo().getSn(), V2XConst.V2X_ROAD_REPORT_ERROR);
- }
- delayedCloseWindow();
- }
-
- /**
- * 反馈路况正确
- */
- private void roadReportTrue(MarkerExploreWay noveltyInfo) {
- if (noveltyInfo != null) {
- RoadConditionUtils.sendDataErrorReceiverInfo(
- noveltyInfo.getPoiType(),
- noveltyInfo.getInfoId(),
- "2");
- TrackUtils.trackV2xRoadEvent(noveltyInfo.getInfoId(), noveltyInfo.getUserInfo().getSn(), V2XConst.V2X_ROAD_REPORT_RIGHT);
- }
- delayedCloseWindow();
- }
-
- /**
- * 点赞
- */
- private void handlerZan(MarkerExploreWay noveltyInfo) {
- try {
- AIAssist.getInstance(V2XUtils.getApp()).speakTTSVoice("已点赞", null);
- showTip("已点赞");
- if (noveltyInfo != null) {
- V2XServiceManager.getV2XMarkerService()
- .getV2XRefreshModel()
- .giveLikeLiveVideo(null, noveltyInfo.getSn());
- }
- delayedCloseWindow();
- } catch (Exception e) {
- e.printStackTrace();
- }
- TrackUtils.trackV2xRoadEvent(noveltyInfo.getInfoId(), noveltyInfo.getUserInfo().getSn(), V2XConst.V2X_ROAD_ZAN);
- }
-
/**
* 延迟关闭窗体
*/
- private void delayedCloseWindow() {
- itemView.postDelayed(new Runnable() {
- @Override
- public void run() {
- // 移除窗体
- V2XServiceManager
- .getIMogoWindowManager()
- .removeView(V2XRoadEventScenario.getInstance().getV2XWindow().getView());
- V2XRoadEventScenario.getInstance().close();
- }
+ @Override
+ public void delayedCloseWindow() {
+ itemView.postDelayed(() -> {
+ // 移除窗体
+ V2XServiceManager
+ .getIMogoWindowManager()
+ .removeView(V2XRoadEventScenario.getInstance().getV2XWindow().getView());
+ V2XRoadEventScenario.getInstance().close();
}, 1000);
}
-
- private void showTip(String msg) {
- ToastUtils.setGravity(Gravity.CENTER, 0, 0);
- View toastView = LayoutInflater.from(V2XServiceManager.getContext()).inflate(R.layout.toast_view, null);
- TextView msgView = toastView.findViewById(R.id.tvFeedbackContent);
- msgView.setText(msg);
- ToastUtils.showCustomShort(toastView);
- }
}
diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/impl/V2XScenarioManager.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/impl/V2XScenarioManager.java
index 39cb846516..bcffecdee1 100644
--- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/impl/V2XScenarioManager.java
+++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/impl/V2XScenarioManager.java
@@ -93,12 +93,12 @@ public class V2XScenarioManager implements IV2XScenarioManager {
mV2XScenario = V2XIllegalParkScenario.getInstance();
break;
default:
+ Logger.e(MODULE_NAME, "当前V2X消息类型未定义。");
ToastUtils.showLong("当前V2X消息类型未定义。");
return;
}
}
-
// 展示最新的消息
if (mV2XScenario != null) {
mV2XScenario.init(v2XMessageEntity);
diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/animation/V2XAnimationWindow.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/animation/V2XAnimationWindow.java
index 0ece153745..bef1acd8d1 100644
--- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/animation/V2XAnimationWindow.java
+++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/animation/V2XAnimationWindow.java
@@ -8,9 +8,9 @@ import android.view.View;
import androidx.constraintlayout.widget.ConstraintLayout;
+import com.mogo.module.common.entity.V2XPushMessageEntity;
import com.mogo.module.v2x.R;
import com.mogo.module.v2x.V2XServiceManager;
-import com.mogo.module.common.entity.V2XPushMessageEntity;
import com.mogo.module.v2x.listener.V2XWindowStatusListener;
import com.mogo.module.v2x.scenario.view.IV2XWindow;
import com.mogo.module.v2x.view.TextureVideoView;
@@ -58,36 +58,38 @@ public class V2XAnimationWindow extends ConstraintLayout implements IV2XWindow {
Logger.w(MODULE_NAME, "场景动画准备。。。。。");
});
diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/seek/V2XSeekHelpScenario.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/seek/V2XSeekHelpScenario.java
index a014a47eac..1e2a045211 100644
--- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/seek/V2XSeekHelpScenario.java
+++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/scenario/scene/seek/V2XSeekHelpScenario.java
@@ -213,5 +213,8 @@ public class V2XSeekHelpScenario extends AbsV2XScenario> i
@Override
public void beforeViewRemoveAnim(View view) {
Logger.d(MODULE_NAME, "关闭 Window 开始");
+ // 重置场景提示的消息
+ setV2XMessageEntity(null);
+ clearPOI();
}
}
diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/utils/ChartingUtil.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/utils/ChartingUtil.java
index c507a39220..63a723fa47 100644
--- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/utils/ChartingUtil.java
+++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/utils/ChartingUtil.java
@@ -61,19 +61,23 @@ public class ChartingUtil {
* @param chartStatusListener 车聊聊状态监听
*/
public static void isOnLine(String sn, ChartStatusListener chartStatusListener) {
- V2XServiceManager.getCarsChattingProvider().isOnLine(
- "CAR_CALL_TO_" + V2XConst.MODULE_NAME,
- V2XUtils.getApp(),
- sn,
- new ICallChatResponse() {
- @Override
- public void isOnLine(boolean onLine, @Nullable String errorMsg) {
- Logger.e(V2XConst.MODULE_NAME, "isOnLine:" + onLine + " errorMsg:" + errorMsg);
- if (chartStatusListener != null) {
- chartStatusListener.canCall(onLine);
+ try {
+ V2XServiceManager.getCarsChattingProvider().isOnLine(
+ "CAR_CALL_TO_" + V2XConst.MODULE_NAME,
+ V2XUtils.getApp(),
+ sn,
+ new ICallChatResponse() {
+ @Override
+ public void isOnLine(boolean onLine, @Nullable String errorMsg) {
+ Logger.e(V2XConst.MODULE_NAME, "isOnLine:" + onLine + " errorMsg:" + errorMsg);
+ if (chartStatusListener != null) {
+ chartStatusListener.canCall(onLine);
+ }
}
- }
- });
+ });
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
}
@@ -83,19 +87,23 @@ public class ChartingUtil {
* @param chartStatusListener 车聊聊状态监听
*/
public static void isCanCall(ChartStatusListener chartStatusListener) {
- V2XServiceManager.getCarsChattingProvider().canCall(
- "CAR_CALL_TO_" + V2XConst.MODULE_NAME,
- V2XUtils.getApp(),
- new ICallChatResponse() {
- @Override
- public void canCall(boolean onLine) {
- Logger.e(V2XConst.MODULE_NAME, "isOnLine:" + onLine);
+ try {
+ V2XServiceManager.getCarsChattingProvider().canCall(
+ "CAR_CALL_TO_" + V2XConst.MODULE_NAME,
+ V2XUtils.getApp(),
+ new ICallChatResponse() {
+ @Override
+ public void canCall(boolean onLine) {
+ Logger.e(V2XConst.MODULE_NAME, "isOnLine:" + onLine);
- if (chartStatusListener != null) {
- chartStatusListener.canCall(onLine);
+ if (chartStatusListener != null) {
+ chartStatusListener.canCall(onLine);
+ }
}
- }
- });
+ });
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
}
}
diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/utils/TrackUtils.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/utils/TrackUtils.java
index df84f6b80a..ef2475f7f6 100644
--- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/utils/TrackUtils.java
+++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/utils/TrackUtils.java
@@ -13,21 +13,30 @@ import java.util.Map;
public class TrackUtils {
//埋点
- public static void trackV2xRoadShow(String dbid,String type, String style) {
- Map properties = new HashMap<>();
- properties.put("dbid", dbid);
- properties.put("type", type);
- properties.put("lng", V2XStatusManager.getInstance().getLocation().getLongitude());
- properties.put("lat", V2XStatusManager.getInstance().getLocation().getLatitude());
- properties.put("style", style);
- V2XServiceManager.getMogoAnalytics().track(V2XConst.V2X_ROAD_SHOW, properties);
+ public static void trackV2xRoadShow(String dbid, String type, String style) {
+ try {
+ Map properties = new HashMap<>();
+ properties.put("dbid", dbid);
+ properties.put("type", type);
+ properties.put("lng", V2XStatusManager.getInstance().getLocation().getLongitude());
+ properties.put("lat", V2XStatusManager.getInstance().getLocation().getLatitude());
+ properties.put("style", style);
+ V2XServiceManager.getMogoAnalytics().track(V2XConst.V2X_ROAD_SHOW, properties);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
}
+
//道路事件操作埋点 v2x_road_event
- public static void trackV2xRoadEvent(String dbid, String sn ,String type) {
- Map properties = new HashMap<>();
- properties.put("dbid", dbid);
- properties.put("sn", sn);
- properties.put("type", type);
- V2XServiceManager.getMogoAnalytics().track(V2XConst.V2X_ROAD_EVET, properties);
+ public static void trackV2xRoadEvent(String dbid, String sn, String type) {
+ try {
+ Map properties = new HashMap<>();
+ properties.put("dbid", dbid);
+ properties.put("sn", sn);
+ properties.put("type", type);
+ V2XServiceManager.getMogoAnalytics().track(V2XConst.V2X_ROAD_EVET, properties);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
}
}
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/btn_parking_nav.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/btn_parking_nav.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/btn_parking_nav.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/btn_parking_nav.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_car_ambulance.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_car_ambulance.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_car_ambulance.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_car_ambulance.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_car_gray.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_car_gray.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_car_gray.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_car_gray.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_car_police.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_car_police.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_car_police.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_car_police.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_car_red.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_car_red.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_car_red.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_car_red.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_car_rescue.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_car_rescue.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_car_rescue.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_car_rescue.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_default_black_logo.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_default_black_logo.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_default_black_logo.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_default_black_logo.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_heart_like.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_heart_like.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_heart_like.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_heart_like.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_heart_like_bg.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_heart_like_bg.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_heart_like_bg.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_heart_like_bg.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_heart_unlike.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_heart_unlike.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_heart_unlike.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_heart_unlike.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_heart_unlike_bg.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_heart_unlike_bg.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_heart_unlike_bg.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_heart_unlike_bg.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_illegal_parking.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_illegal_parking.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_illegal_parking.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_illegal_parking.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_illegal_parking_like.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_illegal_parking_like.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_illegal_parking_like.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_illegal_parking_like.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_illegal_parking_unlike.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_illegal_parking_unlike.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_illegal_parking_unlike.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_illegal_parking_unlike.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_live_load_error.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_live_load_error.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_live_load_error.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_live_load_error.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_nav.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_nav.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_nav.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_nav.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_parking_nav.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_parking_nav.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_parking_nav.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_parking_nav.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_parking_p.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_parking_p.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_parking_p.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_parking_p.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_parting_icon.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_parting_icon.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_parting_icon.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_parting_icon.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_report_err.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_report_err.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_report_err.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_report_err.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_report_true.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_report_true.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_report_true.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_report_true.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_talk.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_talk.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_talk.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_talk.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/icon_warn.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_warn.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/icon_warn.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/icon_warn.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_event_icon_live.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_event_icon_live.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_event_icon_live.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_event_icon_live.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_event_icon_live_press.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_event_icon_live_press.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_event_icon_live_press.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_event_icon_live_press.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_event_icon_nav.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_event_icon_nav.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_event_icon_nav.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_event_icon_nav.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_event_icon_nav_press.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_event_icon_nav_press.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_event_icon_nav_press.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_event_icon_nav_press.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_event_icon_talk.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_event_icon_talk.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_event_icon_talk.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_event_icon_talk.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_event_icon_talk_press.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_event_icon_talk_press.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_event_icon_talk_press.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_event_icon_talk_press.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_event_icon_zan.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_event_icon_zan.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_event_icon_zan.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_event_icon_zan.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_event_live_close.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_event_live_close.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_event_live_close.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_event_live_close.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_event_live_top.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_event_live_top.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_event_live_top.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_event_live_top.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_event_play.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_event_play.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_event_play.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_event_play.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_fault_help_warn.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_fault_help_warn.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_fault_help_warn.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_fault_help_warn.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_gas_money.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_gas_money.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_gas_money.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_gas_money.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_gas_station_refuel.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_gas_station_refuel.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_gas_station_refuel.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_gas_station_refuel.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_help_navi.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_help_navi.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_help_navi.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_help_navi.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_live_logo.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_live_logo.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_live_logo.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_live_logo.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_location.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_location.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_location.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_location.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_p.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_p.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_p.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_p.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_zan1.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_zan1.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_zan1.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_zan1.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_zan2.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_zan2.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v2x_icon_zan2.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v2x_icon_zan2.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_gas_default.jpg b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_gas_default.jpg
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_gas_default.jpg
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_gas_default.jpg
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_1.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_1.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_1.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_1.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_11.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_11.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_11.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_11.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_16.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_16.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_16.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_16.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_2.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_2.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_2.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_2.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_3.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_3.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_3.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_3.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_5.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_5.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_5.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_5.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_6.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_6.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_6.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_6.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_7.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_7.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_7.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_7.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_8.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_8.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_8.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_8.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_9.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_9.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_9.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_9.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_blue.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_blue.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_blue.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_blue.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_error.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_error.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_error.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_error.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_green.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_green.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_green.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_green.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_info_blue.9.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_info_blue.9.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_info_blue.9.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_info_blue.9.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_info_green.9.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_info_green.9.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_info_green.9.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_info_green.9.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_info_red.9.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_info_red.9.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_info_red.9.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_info_red.9.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_live_vedio.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_live_vedio.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_live_vedio.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_live_vedio.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_red.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_red.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_car_red.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_car_red.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_express.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_express.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_express.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_express.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_taxi.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_taxi.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_marker_taxi.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_marker_taxi.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_park_default.jpg b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_park_default.jpg
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_park_default.jpg
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_park_default.jpg
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_car_blue.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_car_blue.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_car_blue.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_car_blue.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_car_orange.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_car_orange.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_car_orange.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_car_orange.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_car_red.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_car_red.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_car_red.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_car_red.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00000.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00000.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00000.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00000.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00001.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00001.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00001.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00001.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00002.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00002.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00002.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00002.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00003.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00003.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00003.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00003.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00004.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00004.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00004.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00004.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00005.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00005.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00005.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00005.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00006.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00006.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00006.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00006.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00007.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00007.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00007.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00007.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00008.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00008.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00008.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00008.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00009.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00009.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00009.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00009.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00010.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00010.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00010.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00010.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00011.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00011.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00011.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00011.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00012.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00012.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00012.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00012.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00013.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00013.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00013.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00013.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00015.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00015.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00015.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00015.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00017.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00017.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00017.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00017.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00018.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00018.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00018.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00018.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00019.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00019.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00019.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00019.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00020.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00020.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00020.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00020.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00023.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00023.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_orange_00023.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_orange_00023.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00000.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00000.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00000.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00000.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00001.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00001.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00001.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00001.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00002.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00002.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00002.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00002.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00003.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00003.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00003.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00003.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00004.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00004.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00004.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00004.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00005.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00005.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00005.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00005.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00006.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00006.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00006.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00006.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00007.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00007.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00007.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00007.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00008.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00008.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00008.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00008.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00009.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00009.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00009.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00009.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00010.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00010.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00010.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00010.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00011.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00011.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00011.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00011.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00012.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00012.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00012.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00012.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00013.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00013.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00013.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00013.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00015.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00015.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00015.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00015.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00017.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00017.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00017.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00017.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00018.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00018.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00018.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00018.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00020.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00020.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00020.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00020.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00023.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00023.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_circle_red_00023.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_circle_red_00023.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_show_live.png b/modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_show_live.png
similarity index 100%
rename from modules/mogo-module-v2x/src/main/res/drawable/v_to_x_warning_show_live.png
rename to modules/mogo-module-v2x/src/main/res/drawable-ldpi/v_to_x_warning_show_live.png
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/btn_parking_nav.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/btn_parking_nav.png
new file mode 100644
index 0000000000..5119d9ca09
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/btn_parking_nav.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_car_ambulance.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_car_ambulance.png
new file mode 100644
index 0000000000..1fb8c62b72
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_car_ambulance.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_car_gray.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_car_gray.png
new file mode 100644
index 0000000000..d4266a6bc5
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_car_gray.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_car_police.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_car_police.png
new file mode 100644
index 0000000000..3407261744
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_car_police.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_car_red.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_car_red.png
new file mode 100644
index 0000000000..df3b80e92c
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_car_red.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_car_rescue.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_car_rescue.png
new file mode 100644
index 0000000000..1f1400f558
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_car_rescue.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_default_black_logo.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_default_black_logo.png
new file mode 100644
index 0000000000..f238846f9f
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_default_black_logo.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_heart_like.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_heart_like.png
new file mode 100644
index 0000000000..ce886a2383
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_heart_like.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_heart_like_bg.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_heart_like_bg.png
new file mode 100644
index 0000000000..f196b6ff8e
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_heart_like_bg.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_heart_unlike.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_heart_unlike.png
new file mode 100644
index 0000000000..0401ccc256
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_heart_unlike.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_heart_unlike_bg.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_heart_unlike_bg.png
new file mode 100644
index 0000000000..33becf307e
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_heart_unlike_bg.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_live_load_error.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_live_load_error.png
new file mode 100644
index 0000000000..a1da551655
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_live_load_error.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_live_video.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_live_video.png
new file mode 100644
index 0000000000..de6f715096
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_live_video.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_nav.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_nav.png
new file mode 100644
index 0000000000..aa5658a972
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_nav.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_parking_nav.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_parking_nav.png
new file mode 100644
index 0000000000..57abc3ccb6
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_parking_nav.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_parking_p.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_parking_p.png
new file mode 100644
index 0000000000..6a642ee946
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_parking_p.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_parting_icon.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_parting_icon.png
new file mode 100644
index 0000000000..ad38331b25
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_parting_icon.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_report_err.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_report_err.png
new file mode 100644
index 0000000000..cc7ee57ee2
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_report_err.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_report_true.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_report_true.png
new file mode 100644
index 0000000000..187a3a179b
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_report_true.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_talk.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_talk.png
new file mode 100644
index 0000000000..89680bd182
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_talk.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_warn.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_warn.png
new file mode 100644
index 0000000000..1b039bafed
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/icon_warn.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/live_error.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/live_error.png
new file mode 100644
index 0000000000..de6f715096
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/live_error.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_live.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_live.png
new file mode 100644
index 0000000000..c9be5c80ae
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_live.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_live_press.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_live_press.png
new file mode 100644
index 0000000000..d03db9ccf3
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_live_press.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_nav.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_nav.png
new file mode 100644
index 0000000000..94f4de32d9
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_nav.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_nav_press.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_nav_press.png
new file mode 100644
index 0000000000..e3aeed7b92
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_nav_press.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_talk.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_talk.png
new file mode 100644
index 0000000000..ffb73a8dbc
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_talk.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_talk_press.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_talk_press.png
new file mode 100644
index 0000000000..db9134bd4d
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_talk_press.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_zan.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_zan.png
new file mode 100644
index 0000000000..c9db0a1ac4
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_event_icon_zan.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_event_live_close.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_event_live_close.png
new file mode 100644
index 0000000000..fb0888da00
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_event_live_close.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_event_live_top.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_event_live_top.png
new file mode 100644
index 0000000000..db5d04ce7c
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_event_live_top.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_event_play.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_event_play.png
new file mode 100644
index 0000000000..685e1a2058
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_event_play.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_fault_help_warn.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_fault_help_warn.png
new file mode 100644
index 0000000000..7add47d66f
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_fault_help_warn.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_gas_money.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_gas_money.png
new file mode 100644
index 0000000000..318b2820f1
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_gas_money.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_gas_station_refuel.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_gas_station_refuel.png
new file mode 100644
index 0000000000..fb50e5483c
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_gas_station_refuel.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_help_navi.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_help_navi.png
new file mode 100644
index 0000000000..0152e59bb2
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_help_navi.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_live_logo.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_live_logo.png
new file mode 100644
index 0000000000..dabf25dbbb
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_live_logo.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_location.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_location.png
new file mode 100644
index 0000000000..e6f4f9f577
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_location.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_p.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_p.png
new file mode 100644
index 0000000000..193b7a5c07
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_p.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_zan1.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_zan1.png
new file mode 100644
index 0000000000..679347e5ee
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_zan1.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_zan2.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_zan2.png
new file mode 100644
index 0000000000..7c1f3352b2
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v2x_icon_zan2.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_1.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_1.png
new file mode 100644
index 0000000000..8ac13e867f
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_1.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_11.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_11.png
new file mode 100644
index 0000000000..6c74ff6d78
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_11.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_16.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_16.png
new file mode 100644
index 0000000000..2a1ca48c62
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_16.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_2.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_2.png
new file mode 100644
index 0000000000..e6f2ee2d5c
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_2.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_3.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_3.png
new file mode 100644
index 0000000000..94af8b123e
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_3.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_5.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_5.png
new file mode 100644
index 0000000000..f9f29cbe61
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_5.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_6.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_6.png
new file mode 100644
index 0000000000..28c6860a3c
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_6.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_7.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_7.png
new file mode 100644
index 0000000000..72fbb4359f
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_7.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_8.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_8.png
new file mode 100644
index 0000000000..148086c831
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_8.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_9.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_9.png
new file mode 100644
index 0000000000..7ad3b4abb5
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_9.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_blue.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_blue.png
new file mode 100644
index 0000000000..a1f1c64566
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_blue.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_error.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_error.png
new file mode 100644
index 0000000000..82b4283fdc
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_error.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_green.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_green.png
new file mode 100644
index 0000000000..16eb35f38e
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_green.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_info_blue.9.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_info_blue.9.png
new file mode 100644
index 0000000000..9c81860194
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_info_blue.9.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_info_green.9.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_info_green.9.png
new file mode 100644
index 0000000000..f47fb094d9
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_info_green.9.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_info_red.9.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_info_red.9.png
new file mode 100644
index 0000000000..c830cb274c
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_info_red.9.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_live_vedio.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_live_vedio.png
new file mode 100644
index 0000000000..3b89ecae7c
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_live_vedio.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_red.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_red.png
new file mode 100644
index 0000000000..cc09e40811
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_car_red.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_express.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_express.png
new file mode 100644
index 0000000000..7e260c5693
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_express.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_taxi.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_taxi.png
new file mode 100644
index 0000000000..c8ce535e58
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_marker_taxi.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_warning_car_blue.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_warning_car_blue.png
new file mode 100644
index 0000000000..cfeef25e75
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_warning_car_blue.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_warning_car_orange.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_warning_car_orange.png
new file mode 100644
index 0000000000..70b3c056ea
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_warning_car_orange.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_warning_car_red.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_warning_car_red.png
new file mode 100644
index 0000000000..ed1542ea36
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_warning_car_red.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_warning_show_live.png b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_warning_show_live.png
new file mode 100644
index 0000000000..63e1db1181
Binary files /dev/null and b/modules/mogo-module-v2x/src/main/res/drawable-xhdpi-1920x1000/v_to_x_warning_show_live.png differ
diff --git a/modules/mogo-module-v2x/src/main/res/layout/item_v2x_event_detail.xml b/modules/mogo-module-v2x/src/main/res/layout/item_v2x_event_detail.xml
index 76d7b5e4fd..f7c6793422 100644
--- a/modules/mogo-module-v2x/src/main/res/layout/item_v2x_event_detail.xml
+++ b/modules/mogo-module-v2x/src/main/res/layout/item_v2x_event_detail.xml
@@ -45,7 +45,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_20"
- android:layout_marginTop="@dimen/dp_13"
+ android:layout_marginTop="@dimen/dp_10"
android:background="@drawable/bg_v2x_event_type_blue"
android:gravity="center"
android:paddingLeft="@dimen/dp_10"
diff --git a/modules/mogo-module-v2x/src/main/res/layout/item_v2x_fault_help.xml b/modules/mogo-module-v2x/src/main/res/layout/item_v2x_fault_help.xml
index d50a321b55..417047d526 100644
--- a/modules/mogo-module-v2x/src/main/res/layout/item_v2x_fault_help.xml
+++ b/modules/mogo-module-v2x/src/main/res/layout/item_v2x_fault_help.xml
@@ -12,6 +12,7 @@
android:id="@+id/llFaultHelpTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
+ android:layout_marginTop="@dimen/dp_10"
android:background="@drawable/v2x_gas_station_title_bg"
android:gravity="center_vertical"
app:layout_constraintStart_toStartOf="parent"
@@ -63,15 +64,22 @@
+ app:miv_borderColor="#4cffffff"
+ app:miv_failureHolder="@drawable/icon_default_user_head"
+ app:miv_overlayImageId="@drawable/icon_default_user_head"
+ app:miv_placeHolder="@drawable/icon_default_user_head"
+ app:miv_shape="circle"
+ app:miv_shapeBorderWidth="@dimen/dp_4" />
@@ -92,10 +100,11 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/dp_22"
+ android:layout_marginTop="@dimen/dp_20"
android:alpha="0.59"
android:textColor="@android:color/white"
android:textSize="@dimen/dp_26"
- app:layout_constraintBottom_toBottomOf="parent"
+ app:layout_constraintBottom_toBottomOf="@+id/ivFaultHelpHead"
app:layout_constraintStart_toEndOf="@id/ivFaultHelpHead"
app:layout_constraintTop_toBottomOf="@id/tvFaultHelpName"
tools:text="15:30发布求助信息" />
@@ -104,22 +113,20 @@
android:id="@+id/ivFaultHelpEventCall"
android:layout_width="@dimen/module_v2x_event_button_size"
android:layout_height="@dimen/module_v2x_event_button_size"
- android:layout_marginEnd="@dimen/dp_15"
- android:src="@drawable/icon_talk"
+ android:layout_marginEnd="@dimen/dp_20"
+ android:src="@drawable/selector_talk_btn"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/ivFaultHelpEventNavi"
app:layout_constraintTop_toTopOf="parent"
- tools:src="@drawable/icon_talk"
tools:visibility="visible" />
+ app:layout_constraintTop_toTopOf="parent" />
\ No newline at end of file
diff --git a/modules/mogo-module-v2x/src/main/res/layout/item_v2x_live_video.xml b/modules/mogo-module-v2x/src/main/res/layout/item_v2x_live_video.xml
index 65da4f8036..93db1915b9 100644
--- a/modules/mogo-module-v2x/src/main/res/layout/item_v2x_live_video.xml
+++ b/modules/mogo-module-v2x/src/main/res/layout/item_v2x_live_video.xml
@@ -32,26 +32,4 @@
app:miv_shapeBorderWidth="@dimen/dp_4"
tools:visibility="visible" />
-
-
-
-
\ No newline at end of file
diff --git a/modules/mogo-module-v2x/src/main/res/layout/merge_view_event_button.xml b/modules/mogo-module-v2x/src/main/res/layout/merge_view_event_button.xml
index a808edd9fa..345e9ebc81 100644
--- a/modules/mogo-module-v2x/src/main/res/layout/merge_view_event_button.xml
+++ b/modules/mogo-module-v2x/src/main/res/layout/merge_view_event_button.xml
@@ -8,9 +8,10 @@
diff --git a/modules/mogo-module-v2x/src/main/res/layout/view_heart_unlike.xml b/modules/mogo-module-v2x/src/main/res/layout/view_heart_unlike.xml
index 5edf101879..027401f76f 100644
--- a/modules/mogo-module-v2x/src/main/res/layout/view_heart_unlike.xml
+++ b/modules/mogo-module-v2x/src/main/res/layout/view_heart_unlike.xml
@@ -1,9 +1,8 @@
diff --git a/modules/mogo-module-v2x/src/main/res/layout/window_fatigue_driving.xml b/modules/mogo-module-v2x/src/main/res/layout/window_fatigue_driving.xml
index 608f58a56e..1f3f529ba3 100644
--- a/modules/mogo-module-v2x/src/main/res/layout/window_fatigue_driving.xml
+++ b/modules/mogo-module-v2x/src/main/res/layout/window_fatigue_driving.xml
@@ -48,7 +48,7 @@
android:layout_marginEnd="@dimen/dp_20"
android:gravity="center_vertical"
android:textColor="#FFF"
- android:textSize="@dimen/dp_82"
+ android:textSize="@dimen/dp_86"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="@+id/ivToNav"
app:layout_constraintEnd_toStartOf="@+id/ivToNav"
@@ -57,9 +57,9 @@
diff --git a/modules/mogo-module-v2x/src/main/res/layout/window_illegal_parking.xml b/modules/mogo-module-v2x/src/main/res/layout/window_illegal_parking.xml
index 25db21af05..3f2acc3bd0 100644
--- a/modules/mogo-module-v2x/src/main/res/layout/window_illegal_parking.xml
+++ b/modules/mogo-module-v2x/src/main/res/layout/window_illegal_parking.xml
@@ -12,8 +12,8 @@
@@ -23,6 +23,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_20"
+ android:layout_marginTop="@dimen/dp_23"
android:background="@drawable/bg_v2x_event_type_read"
android:gravity="center"
android:paddingLeft="@dimen/dp_10"
@@ -34,7 +35,7 @@
android:textSize="@dimen/dp_24"
app:layout_constraintBottom_toTopOf="@+id/tvAddress"
app:layout_constraintStart_toEndOf="@+id/ivIconP"
- app:layout_constraintTop_toTopOf="@+id/ivIconP" />
+ app:layout_constraintTop_toTopOf="parent" />
+ tools:text="小黄庄北街与北三环辅路交叉口小黄庄北街与北三环辅路交叉口" />
diff --git a/modules/mogo-module-v2x/src/main/res/raw/scenario_road_event_data.json b/modules/mogo-module-v2x/src/main/res/raw/scenario_road_event_data.json
index a2575f9802..395ffb1f11 100644
--- a/modules/mogo-module-v2x/src/main/res/raw/scenario_road_event_data.json
+++ b/modules/mogo-module-v2x/src/main/res/raw/scenario_road_event_data.json
@@ -5,7 +5,7 @@
"location":{
"address":"北五环(测试位置不准确)",
"angle":270,
- "lat":39.969155,
+ "lat":39.96155,
"lon":116.415853
},
"noveltyInfo":{
@@ -27,7 +27,7 @@
"location":{
"address":"北五环(测试位置不准确)",
"angle":270,
- "lat":39.969155,
+ "lat":39.968155,
"lon":116.415853
},
"poiType":"10002",
diff --git a/modules/mogo-module-v2x/src/main/res/values-xhdpi-1920x1000/dimens.xml b/modules/mogo-module-v2x/src/main/res/values-xhdpi-1920x1000/dimens.xml
index 9698f6c830..721fba8c3c 100644
--- a/modules/mogo-module-v2x/src/main/res/values-xhdpi-1920x1000/dimens.xml
+++ b/modules/mogo-module-v2x/src/main/res/values-xhdpi-1920x1000/dimens.xml
@@ -10,7 +10,10 @@
210px
+ 160px
+
90px
+ 100px
270px
480px
diff --git a/modules/mogo-module-v2x/src/main/res/values-xhdpi/dimens.xml b/modules/mogo-module-v2x/src/main/res/values-xhdpi/dimens.xml
index 54e448bc1b..a63ecc25c4 100644
--- a/modules/mogo-module-v2x/src/main/res/values-xhdpi/dimens.xml
+++ b/modules/mogo-module-v2x/src/main/res/values-xhdpi/dimens.xml
@@ -10,7 +10,10 @@
230px
+ 160px
+
118px
+ 130px
320px
480px
diff --git a/modules/mogo-module-v2x/src/main/res/values/dimens.xml b/modules/mogo-module-v2x/src/main/res/values/dimens.xml
index 439cae8746..3105233703 100644
--- a/modules/mogo-module-v2x/src/main/res/values/dimens.xml
+++ b/modules/mogo-module-v2x/src/main/res/values/dimens.xml
@@ -10,7 +10,11 @@
130px
- 65px
+ 82px
+
+ 54px
+
+ 64px
175px
262px
diff --git a/services/mogo-service-api/consumer-rules.pro b/services/mogo-service-api/consumer-rules.pro
index e69de29bb2..8d7cbb31a6 100644
--- a/services/mogo-service-api/consumer-rules.pro
+++ b/services/mogo-service-api/consumer-rules.pro
@@ -0,0 +1,2 @@
+#-----MogoServiceApi-----
+-keep class com.mogo.service.** {*;}
\ No newline at end of file
diff --git a/services/mogo-service-api/proguard-rules.pro b/services/mogo-service-api/proguard-rules.pro
index f1b424510d..200f328484 100644
--- a/services/mogo-service-api/proguard-rules.pro
+++ b/services/mogo-service-api/proguard-rules.pro
@@ -19,3 +19,6 @@
# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile
+
+#-----MogoServiceApi-----
+-keep class com.mogo.service.** {*;}
diff --git a/upload.sh b/upload.sh
index ca7a1df0d9..6a00beaf4c 100755
--- a/upload.sh
+++ b/upload.sh
@@ -1,36 +1,102 @@
#!/bin/bash
./gradlew :foudations:mogo-utils:clean :foudations:mogo-utils:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :foudations:mogo-commons:clean :foudations:mogo-commons:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :libraries:mogo-map-api:clean :libraries:mogo-map-api:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :services:mogo-service-api:clean :services:mogo-service-api:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :libraries:map-amap:clean :libraries:map-amap:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :libraries:map-autonavi:clean :libraries:map-autonavi:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :libraries:mogo-map:clean :libraries:mogo-map:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-common:clean :modules:mogo-module-common:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :services:mogo-service:clean :services:mogo-service:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-obu:clean :modules:mogo-module-obu:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-map:clean :modules:mogo-module-map:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-apps:clean :modules:mogo-module-apps:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-gps-simulator:clean :modules:mogo-module-gps-simulator:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-gps-simulator-debug:clean :modules:mogo-module-gps-simulator-debug:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-gps-simulator-noop:clean :modules:mogo-module-gps-simulator-noop:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-service:clean :modules:mogo-module-service:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-authorize:clean :modules:mogo-module-authorize:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-share:clean :modules:mogo-module-share:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-extensions:clean :modules:mogo-module-extensions:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-search:clean :modules:mogo-module-search:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-media:clean :modules:mogo-module-media:uploadArchives
+if [ $? -eq 0 ]; then
+./gradlew :modules:mogo-module-v2x:clean :modules:mogo-module-v2x:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-back:clean :modules:mogo-module-back:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-main:clean :modules:mogo-module-main:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-guide:clean :modules:mogo-module-guide:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :main-extensions:mogo-module-main-independent:clean :main-extensions:mogo-module-main-independent:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :main-extensions:mogo-module-main-launcher:clean :main-extensions:mogo-module-main-launcher:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-event-panel:clean :modules:mogo-module-event-panel:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-event-panel-noop:clean :modules:mogo-module-event-panel-noop:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-left-panel:clean :modules:mogo-module-left-panel:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-left-panel-noop:clean :modules:mogo-module-left-panel-noop:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :modules:mogo-module-byd:clean :modules:mogo-module-byd:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :foudations:mogo-base-services-apk:clean :foudations:mogo-base-services-apk:uploadArchives
+if [ $? -eq 0 ]; then
./gradlew :foudations:mogo-base-services-sdk:clean :foudations:mogo-base-services-sdk:uploadArchives
-
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi
+fi