diff --git a/app/build.gradle b/app/build.gradle
index aad3e71d5e..cd753934aa 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,8 +1,8 @@
-import java.text.SimpleDateFormat
-
apply plugin: 'com.android.application'
+apply plugin: 'com.alibaba.arouter'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
+import java.text.SimpleDateFormat
android {
compileSdkVersion rootProject.ext.android.compileSdkVersion
@@ -25,7 +25,7 @@ android {
externalNativeBuild {
ndk {
// 设置支持的SO库架构
- abiFilters 'armeabi-v7a'
+ abiFilters 'armeabi-v7a','x86'
}
}
}
@@ -98,18 +98,21 @@ android {
dimension "product"
// 使用思必驰语音
buildConfigField 'int', 'AIType','2'
+ buildConfigField 'boolean', 'AI_ASSIST_ACTIVE_STAUTS', 'false'
}
// e系列
e8xx {
dimension "product"
// 使用思必驰语音
buildConfigField 'int', 'AIType','2'
+ buildConfigField 'boolean', 'AI_ASSIST_ACTIVE_STAUTS', 'true'
}
// d系列
d8xx {
dimension "product"
// 使用同行者语音
buildConfigField 'int', 'AIType','1'
+ buildConfigField 'boolean', 'AI_ASSIST_ACTIVE_STAUTS', 'true'
}
qa {
dimension "env"
@@ -282,4 +285,4 @@ def getGitCommit() {
gitCommit
}
-apply plugin: 'arouterhook'
\ No newline at end of file
+//apply plugin: 'arouterhook'
\ No newline at end of file
diff --git a/app/src/main/java/com/mogo/launcher/MogoApplication.java b/app/src/main/java/com/mogo/launcher/MogoApplication.java
index ddd2d059ba..ca92b2cb80 100644
--- a/app/src/main/java/com/mogo/launcher/MogoApplication.java
+++ b/app/src/main/java/com/mogo/launcher/MogoApplication.java
@@ -37,12 +37,7 @@ public class MogoApplication extends AbsMogoApplication {
@Override
public void onCreate() {
- DebugConfig.setNetMode(BuildConfig.NET_ENV);
- DebugConfig.setDebug(BuildConfig.DEBUG);
- DebugConfig.setAIType(BuildConfig.AIType);
- DebugConfig.setLaunchLocationService(BuildConfig.LAUNCH_LOCATION_SERVICE);
- DebugConfig.setUseCustomNavi(BuildConfig.USE_CUSTOM_NAVI);
- DebugConfig.setLauncher(BuildConfig.IS_LAUNCHER);
+ initDebugConfig();
super.onCreate();
// Crash 日志收集
final long start = System.currentTimeMillis();
@@ -78,6 +73,16 @@ public class MogoApplication extends AbsMogoApplication {
Log.i("timer", "cost " + (System.currentTimeMillis() - start) + "ms");
}
+ private void initDebugConfig(){
+ DebugConfig.setNetMode(BuildConfig.NET_ENV);
+ DebugConfig.setDebug(BuildConfig.DEBUG);
+ DebugConfig.setAIType(BuildConfig.AIType);
+ DebugConfig.setLaunchLocationService(BuildConfig.LAUNCH_LOCATION_SERVICE);
+ DebugConfig.setUseCustomNavi(BuildConfig.USE_CUSTOM_NAVI);
+ DebugConfig.setLauncher(BuildConfig.IS_LAUNCHER);
+ DebugConfig.setActiveAIAssistFlag( BuildConfig.AI_ASSIST_ACTIVE_STAUTS );
+ }
+
@Override
protected void init() {
super.init();
diff --git a/build.gradle b/build.gradle
index 1ff312c0fb..2ff4df7631 100644
--- a/build.gradle
+++ b/build.gradle
@@ -22,7 +22,7 @@ buildscript {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath "com.alibaba:arouter-register:1.0.2"
classpath 'com.hujiang.aspectjx:gradle-android-plugin-aspectjx:2.0.4'
- classpath "com.mogo.module.pluginhook:module-pluginhook:${HOOKPLUGIN_VERSION}"
+// classpath "com.mogo.module.pluginhook:module-pluginhook:${HOOKPLUGIN_VERSION}"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
diff --git a/config.gradle b/config.gradle
index d79002527d..ea2f5501c3 100644
--- a/config.gradle
+++ b/config.gradle
@@ -17,7 +17,7 @@ ext {
androidxappcompat : "androidx.appcompat:appcompat:1.0.2",
androidxccorektx : "androidx.core:core-ktx:1.2.0",
androidxconstraintlayout : "androidx.constraintlayout:constraintlayout:1.1.3",
- boostmultidex : "com.mogo.module.boostmultidex:module-boostmultidex:${BOOST_MULTIDEX_VERSION}",
+ boostmultidex : "com.bytedance.boost_multidex:boost_multidex:1.0.1",
androidxviewpager2 : "androidx.viewpager2:viewpager2:1.0.0",
androidxrecyclerview : "androidx.recyclerview:recyclerview:1.1.0",
androidxcardview : "androidx.cardview:cardview:1.0.0",
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 f8c85cf2c1..8d152859ba 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
@@ -151,4 +151,17 @@ public class DebugConfig {
public static void setRequestOnlineCarData( boolean sRequestOnlineCarData ) {
DebugConfig.sRequestOnlineCarData = sRequestOnlineCarData;
}
+
+ /**
+ * 是否支持临时激活小智
+ */
+ private static boolean sActiveAIAssistFlag = true;
+
+ public static boolean isActiveAIAssistFlag() {
+ return sActiveAIAssistFlag;
+ }
+
+ public static void setActiveAIAssistFlag( boolean sActiveAIAssistFlag ) {
+ DebugConfig.sActiveAIAssistFlag = sActiveAIAssistFlag;
+ }
}
diff --git a/gradle.properties b/gradle.properties
index c544822aac..b992330466 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -38,7 +38,7 @@ MOGO_SERVICE_API_VERSION=1.2.1.9
MOGO_CONNECTION_VERSION=1.2.1.9
MOGO_MODULE_APPS_VERSION=1.2.1.9
MOGO_MODULE_NAVI_VERSION=1.2.1.9
-MOGO_MODULE_SHARE_VERSION=1.2.1.9
+MOGO_MODULE_SHARE_VERSION=1.2.1.18
MOGO_MODULE_COMMON_VERSION=1.2.1.9
MOGO_MODULE_MAIN_VERSION=1.2.1.9
MOGO_MODULE_MAP_VERSION=1.2.1.9
@@ -71,7 +71,7 @@ MOGO_MODULE_GUIDESHOW_PROVIDER_VERSION=1.0.2-SNAPSHOT
# 在线车辆F
MOGO_MODULE_ONLINECAR_VERSION=1.0.3.2
# v2x
-MOGO_MODULE_V2X_VERSION=1.1.36
+MOGO_MODULE_V2X_VERSION=1.1.47
# 推送
MOGO_MODULE_PUSH_VERSION=1.0.1
# 广告资源位
diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppFilterImpl.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppFilterImpl.java
index 1d0437d956..0043bcab25 100644
--- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppFilterImpl.java
+++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppFilterImpl.java
@@ -6,6 +6,7 @@ import android.content.pm.PackageInfo;
import com.mogo.module.apps.model.AppEnum;
import com.mogo.module.apps.model.AppEnumHelper;
+import com.mogo.module.common.utils.CarSeries;
import java.util.Arrays;
import java.util.HashMap;
@@ -29,6 +30,9 @@ public class AppFilterImpl implements AppFilter {
final String[] values = context.getResources().getStringArray( R.array.module_apps_array_filter_packages );
if ( values != null ) {
mFilterPackages = Arrays.asList( values );
+ if ( CarSeries.getSeries() != CarSeries.CAR_SERIES_F80X ) {
+ mFilterPackages.add( "com.android.settings" );
+ }
}
}
diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppsPresenter.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppsPresenter.java
index 942568fc7f..87d43203e1 100644
--- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppsPresenter.java
+++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/AppsPresenter.java
@@ -80,6 +80,11 @@ public class AppsPresenter extends Presenter< AppsView > {
Logger.d( TAG, "apps: %s", appInfoList );
final Map< Integer, List< AppInfo > > result = addOthersEntrances( appInfoList );
+ try {
+ filterSamePackage( result );
+ } catch ( Exception e ) {
+ Logger.e( TAG, e, "error." );
+ }
UiThreadHandler.post( () -> {
if ( mView != null ) {
mView.renderApps( result );
@@ -143,7 +148,7 @@ public class AppsPresenter extends Presenter< AppsView > {
}
}
}
-// growthCapacity( result );
+// growthCapacity( result )
// // 添加介绍入口
// result.get( result.size() - 1 ).add( new AppInfo( GuideShowLauncher.APP_INFO_NAME_GUIDE_SHOW, getContext().getPackageName(), null, 0, null, R.drawable.module_apps_ic_guide_show ) );
if ( DebugConfig.isDebug() ) {
@@ -154,6 +159,30 @@ public class AppsPresenter extends Presenter< AppsView > {
return result;
}
+ private void filterSamePackage( Map< Integer, List< AppInfo > > appInfoMap ) {
+ if ( appInfoMap == null || appInfoMap.isEmpty() ) {
+ return;
+ }
+ for ( Map.Entry< Integer, List< AppInfo > > integerListEntry : appInfoMap.entrySet() ) {
+ if ( integerListEntry == null ) {
+ continue;
+ }
+ List< AppInfo > oldList = integerListEntry.getValue();
+ if ( oldList == null
+ || oldList.size() > AppsConst.TOTAL_SIZE_EACH_PAGE ) {
+ return;
+ }
+ List< AppInfo > appInfos = new ArrayList<>();
+ for ( AppInfo appInfo : oldList ) {
+ if ( appInfos.contains( appInfo ) ) {
+ continue;
+ }
+ appInfos.add( appInfo );
+ }
+ integerListEntry.setValue( appInfos );
+ }
+ }
+
/**
* 扩容
*
diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/AppInfo.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/AppInfo.java
index d9fddafb98..dae51ba27d 100644
--- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/AppInfo.java
+++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/AppInfo.java
@@ -1,6 +1,9 @@
package com.mogo.module.apps.model;
import android.graphics.drawable.Drawable;
+import android.text.TextUtils;
+
+import java.util.Objects;
/**
* @author congtaowang
@@ -29,7 +32,7 @@ public class AppInfo {
}
public AppInfo( String mName, String mPackageName, String mVersionName, int mVersionCode, Drawable mIcon, int mIconResId ) {
- this(mName, mPackageName, mVersionName, mVersionCode, mIcon, mIconResId, 0);
+ this( mName, mPackageName, mVersionName, mVersionCode, mIcon, mIconResId, 0 );
}
public int getIconResId() {
@@ -60,6 +63,19 @@ public class AppInfo {
return mTrackType;
}
+ @Override
+ public boolean equals( Object o ) {
+ if ( this == o ) return true;
+ if ( o == null || getClass() != o.getClass() ) return false;
+ AppInfo appInfo = ( AppInfo ) o;
+ return TextUtils.equals( mPackageName, appInfo.mPackageName );
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash( mPackageName );
+ }
+
@Override
public String toString() {
return "AppInfo{" +
diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/AppsModel.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/AppsModel.java
index 7235c69ed9..61c55a981d 100644
--- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/AppsModel.java
+++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/model/AppsModel.java
@@ -56,6 +56,7 @@ public class AppsModel {
if ( mPagedApps != null ) {
mPagedApps.clear();
}
+ mPagedApps = null;
mContext = null;
mAppFilter = null;
sInstance = null;
diff --git a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/view/OnAiAssistClickListener.java b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/view/OnAiAssistClickListener.java
index 393f3d9a6f..8be87989e0 100644
--- a/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/view/OnAiAssistClickListener.java
+++ b/modules/mogo-module-apps/src/main/java/com/mogo/module/apps/view/OnAiAssistClickListener.java
@@ -30,7 +30,7 @@ class OnAiAssistClickListener implements View.OnClickListener {
@Override
public void onClick( View v ) {
- if ( Devices.isBind() ) {
+ if ( Devices.isBind() || !DebugConfig.isActiveAIAssistFlag() ) {
AIAssist.startAssistant( v.getContext() );
trackNavigatorClickEvent( 5 );
} else {
diff --git a/modules/mogo-module-apps/src/main/res/values/strings.xml b/modules/mogo-module-apps/src/main/res/values/strings.xml
index bf172403d9..822303fed7 100644
--- a/modules/mogo-module-apps/src/main/res/values/strings.xml
+++ b/modules/mogo-module-apps/src/main/res/values/strings.xml
@@ -13,7 +13,6 @@
- com.android.browser
- com.android.providers.downloads.ui
- com.zhidao.guide.lock
- - com.android.settings
- com.android.calculator2
- com.nwd.guidebookskin
- com.iflytek.inputmethod.pad
diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/utils/CarSeries.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/utils/CarSeries.java
index e8675cdfc9..71bcd12274 100644
--- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/utils/CarSeries.java
+++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/utils/CarSeries.java
@@ -1,5 +1,7 @@
package com.mogo.module.common.utils;
+import android.text.TextUtils;
+
import java.lang.reflect.Method;
/**
@@ -21,6 +23,7 @@ public class CarSeries {
public static final int CAR_SERIES_E84XCD = 51;
public static final int CAR_SERIES_E85X = 50;
public static final int CAR_SERIES_E85XCD = 51;
+ public static final int CAR_SERIES_E85XJD = 51;
public static int CAR_SERIES = 0;
@@ -33,6 +36,10 @@ public class CarSeries {
return CAR_SERIES;
}
String device = get( "ro.fota.device" );
+ if ( TextUtils.isEmpty( device ) ) {
+ return CAR_SERIES_F80X;
+ }
+
if ( "FG166".equals( device ) ) {
CAR_SERIES = CAR_SERIES_C80X;
} else if ( "D801-802".equals( device ) ) {
@@ -58,6 +65,10 @@ public class CarSeries {
CAR_SERIES = CAR_SERIES_E85X;
} else if ( "E85XCD".equals( device ) ) {
CAR_SERIES = CAR_SERIES_E85XCD;
+ } else if ( "E85XJD".equals( device ) ) {
+ CAR_SERIES = CAR_SERIES_E85XJD;
+ } else if ( device.startsWith( "E85" ) ) {
+ CAR_SERIES = CAR_SERIES_E85XJD;
} else {
CAR_SERIES = CAR_SERIES_F80X;
}
diff --git a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/navi/BaseNaviInfoView.java b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/navi/BaseNaviInfoView.java
index 85faab6b7a..192cdfe588 100644
--- a/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/navi/BaseNaviInfoView.java
+++ b/modules/mogo-module-extensions/src/main/java/com/mogo/module/extensions/navi/BaseNaviInfoView.java
@@ -67,7 +67,7 @@ public abstract class BaseNaviInfoView {
protected String getFormatSurplusTime( int seconds ) {
if ( seconds > 60 * 60 ) {
- mFormatSurplusDistanceUnit = "h";
+ mFormatSurplusTimeUnit = "h";
return String.format( "%.1f", ( ( float ) seconds ) / ( 60 * 60 ) );
}
diff --git a/modules/mogo-module-service/src/main/res/layout/view_map_marker.xml b/modules/mogo-module-service/src/main/res/layout/view_map_marker.xml
index 3ba8e4a5cf..7651639cf3 100644
--- a/modules/mogo-module-service/src/main/res/layout/view_map_marker.xml
+++ b/modules/mogo-module-service/src/main/res/layout/view_map_marker.xml
@@ -17,11 +17,11 @@
+ tools:src="@drawable/icon_map_marker_road_block_up2" />
diff --git a/modules/mogo-module-service/src/main/res/layout/view_map_marker_info.xml b/modules/mogo-module-service/src/main/res/layout/view_map_marker_info.xml
index 028892962e..444e398c97 100644
--- a/modules/mogo-module-service/src/main/res/layout/view_map_marker_info.xml
+++ b/modules/mogo-module-service/src/main/res/layout/view_map_marker_info.xml
@@ -32,8 +32,8 @@
8dp
100px
117px
- 50px
- 50px
+ 60px
+ 60px
8px
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 03b1e6650a..6faf47f1e0 100644
--- a/modules/mogo-module-service/src/main/res/values/dimens.xml
+++ b/modules/mogo-module-service/src/main/res/values/dimens.xml
@@ -4,8 +4,8 @@
4dp
56px
65px
- 27px
- 27px
+ 35px
+ 35px
4px
550px
diff --git a/modules/mogo-module-share/src/main/java/com/mogo/module/share/ShareControl.java b/modules/mogo-module-share/src/main/java/com/mogo/module/share/ShareControl.java
index fabec3de0d..813a7e9252 100644
--- a/modules/mogo-module-share/src/main/java/com/mogo/module/share/ShareControl.java
+++ b/modules/mogo-module-share/src/main/java/com/mogo/module/share/ShareControl.java
@@ -295,7 +295,7 @@ public class ShareControl implements IMogoShareManager, IMogoIntentListener, IMo
private void trackVoiceWithType(String type){
Map properties = new HashMap<>();
properties.put("type",type);
- properties.put("from","2");
+ properties.put("from","1");
AnalyticsUtils.track("v2x_share_type",properties);
}
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 30154abf9e..0a2e936abb 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
@@ -144,6 +144,7 @@ public class LaucherShareDialog extends BaseFloatDialog implements View.OnClickL
// 事故
Logger.d(TAG,"点击事故");
sendShareReceiver(ShareConstants.TYPE_ACCIDENT);
+ trackWithType(ShareConstants.TYPE_ACCIDENT);
dismiss();
} else if (id == R.id.tvConstruction) {
// 道路施工
@@ -155,6 +156,7 @@ public class LaucherShareDialog extends BaseFloatDialog implements View.OnClickL
// 实时路况
Logger.d(TAG,"点击实时路况");
sendShareReceiver(ShareConstants.TYPE_REAL_TIME_TRAFFIC);
+ trackWithType(ShareConstants.TYPE_REAL_TIME_TRAFFIC);
dismiss();
} else if (id == R.id.tvStagnantWater) {
// 道路积水